Programme de la conférence Traque sur Internet [Programme]

Présentation technique des sessions
 

Qu'est ce qu'une session ?

Une session commence lorsqu'un surfeur arrive sur votre page web et se termine à son départ.
Pour l'essentiel, un cookie est assigné à votre brouteur, des ressources mémoires sont allouées sur le serveur pour garder les variables de sessions.
C'est la seule information présente sur votre ordinateur. Avec --enable-trans-sid, on n'a pas besoin de cookie.
En fait PHP4 utilise des fichiers pour enregistrer les variables de sessions par défaut mais il est possible d'utiliser un autre moyen en changeant l'option session.save_handler de files à user. Dès lors, les fonctions de sessions doivent être définies. Cette méthode permet de sauver les sessions dans une base de données par exemple.


Comment l'implémenter ?

Toutes les pages utilisant les sessions doivent appeler la fonction session_start() pour indiquer au moteur PHP4 de charger les informations relatives à la session dans la mémoire.
La fonction session_start() essaye de trouver l'identificateur de la session dans les cookies se trouvant sur votre disque dur.
Si l'identificateur de la session ne peut être trouvé, une nouvelle session est alors créée.
session_start() (ou implicitement session_register()) doit être appelée avant qu'un header ne soit lancé. C'est devenu une coutume de commencer le script par session_start() afin de s'assurer qu'elle est bien valide.

Traque sur Internet