Bonjour,
Je suis entrain de mettre en place un systeme à base de session. En gros, j'ai un menu avec certains liens qui ne sont là 'que' pour déplier le sous menu. Dans ce cas, je réaffiche la page sur laquelle l'utilisateur était, page judicieusement conservée en session. Tant qu'on reste connecté le système fonctionne nickel.
Par contre, après fermeture du navigateur, si je reviens sur le site, la page en session est encore là, et au lieu d'arriver sur la page d'accueil de mon site, j'arrive sur la derniere page ou j'étais en quittant.
Bref, après avoir lu cette page, il apparait qu'il faut mettre le lifetime à zero. Mais visiblement, c'est déjà le cas chez moi. Ci dessous l'extrait de mon phpinfo() qui concerne les sessions, et un bout de code ou j'enfonce le clou pour tenter de forcer (en vain) la destruction de la session à la fermeture du navigateur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 session.auto_start Off Off session.bug_compat_42 On On session.bug_compat_warn On On session.cache_expire 180 180 session.cache_limiter nocache nocache session.cookie_domain no value no value session.cookie_httponly Off Off session.cookie_lifetime 0 0 session.cookie_path / / session.cookie_secure Off Off session.entropy_file no value no value session.entropy_length 0 0 session.gc_divisor 100 100 session.gc_maxlifetime 1440 1440 session.gc_probability 1 1 session.hash_bits_per_character 4 4 session.hash_function 0 0 session.name PHPSESSID PHPSESSID session.referer_check no value no value session.save_handler files files session.save_path E:/wamp/tmp E:/wamp/tmp session.serialize_handler php php session.use_cookies On On session.use_only_cookies Off Off session.use_trans_sid 0 0Bref, comment faire en sorte que la session soit vraiment détruite à la fermeture du navigateur ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 session_name($this->_nom_session); ini_set('session.cookie_lifetime', 0); ini_set('session.cache_expire', 0); session_set_cookie_params(0); session_start(); (...)
Merci d'avance ;-)
Partager