Mammouth du PHP |
843 Messages
19 févr. 2007, 19:36
donc le dossier contenant les fichiers de session devrai ce nettoyer tout seul
de plus en faisant comme ceci je rencontre de nouveau problème
// on definit l'ancien id de session
$old_session_id = session_id();
// on definit l'ancien nom de fichier de session
$old_session_filename = "sess_$old_session_id";
// on remplace l'identifiant de session courant par un nouveau à chaque action
session_regenerate_id();
// on supprime l'ancien fichier de session devenu obselete
$dossier_session = opendir(session_save_path());
echo "Mon chemin =[", session_save_path().$old_session_filename, "]<br />";
unlink(session_save_path().$old_session_filename);
closedir($dossier_session);
l'echo me retourne ceci sous easyphp (winXP):
Mon chemin =[C:\PROGRA~1\EASYPH~1\\tmp\sess_f0e4dd62803a189f9d2597e8e6b5e405]
et il ne retourne ceci en ligne (linux):
Mon chemin =[/home/www/moncompte/sessionssess_2f35b48cd0e79a0d5bbec3ceec303a3d]
noter que sous linux il manque le / ce qui génere une erreure... et que sous winXP le \ est bien là (pourtant mon php.ini contient
session.save_path = /tmp)
Je pense donc que pour limité la casse et afin de pouvoir continuer à develloper sans devoir tout faire sous linux, il va falloir que je comprenne pourquoi le nettoyage auto du moteur de php ne fonctionne pas.
donc si quelqu'un voit pourquoi mon session.gc_maxlifetime n'est pas respecté? et donc pourquoi mes fichiers de session ne sont pas effacer tout seul après un certain temps?
Merci d'avance

:: contactez moi par MP ::
NON au language SMS sur les forums 