Salut à tous,
j'ai une petite confusion : Mais que fais exectement la fonction session_start(), c'est ce qui permet de créer les variables global du type$HTTP_SESSION_VARS?
A+
Comment ça marche
Au premier appel à un script qui contient la fonction session_start(), celle-ci va déposer un cookie d'identification sur le poste client et ouvrir un fichier de session sur le serveur. Ce fichier est unique et n'appartient qu'au client qui possède le code d'identification contenu dans le cookie.
Aux appels subséquents, si un cookie de session existe déjà sur le poste client, PHP ouvre le fichier de session de ce client et lit (affecte) les différentes variables et tableaux qui s'y trouvent.
Voilà, en gros, ce que fait cette fonction. Il fait encore d'autres choses utiles comme le nettoyage des fichiers de sessions obsolètes, la gestion de la destruction des variables/tableaux de session etc...
Tout ce que fait cette fonction peut être totalement répliqué par un code perso qui manipule les cookies (setcookie) la sérialisation (serialize unserialize) la gestion des fichiers (fopen fwrite fread etc...) ou bien le stockage en bdd mais bon, c'est quand même beaucoup plus rapide et simple d'utiliser session_start qui tient en une seule ligne non?
A quoi ça sert
A passer des variables/tableaux d'une page à l'autre. Très pratique pour personnaliser un site en fonction d'un utilisateur particulier, qui se serait indentifié à son entrée sur un site.
Outil indispensable.
Il y a plein de tuto sur le sujet.
La doc:
http://php.belnet.be/manual/fr/ref.session.php
ripat