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

Présentation technique des sessions
 

Les erreurs classiques

Erreur classique :
Warning: Cannot send session cookie - headers already sent by (output started at XXX) in XXX on line 8
Warning: Cannot send session cache limiter - headers already sent (output started at XXX) in XXX on line 8


C'est l'erreur la plus classique. Un caractère affichable est présent avant le session_start.
Ceci peut être un simple espace ou passage à la ligne avant le <? Ou un echo qui ne doit pas être avant le session_start.
Cela vient du fait que les sessions se comportent comme les cookies et doivent etre faites avant de renvoyer des information au serveur (pas de echo, ni de <html> avant...).

Perte de session :
Si le PHP n'est pas compilé avec l'option --enable-trans-sid, il est NECESSAIRE d'ajouter l'identifiant de session dans les URLs (locales).
exemple : echo "<a href=\"next.php?".session_name()."=".session_id()."\">next page</a>";


Traque sur Internet