|
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.
|