Supprimer les fichiers de session

Fermé
olivbarb Messages postés 303 Date d'inscription dimanche 5 août 2007 Statut Membre Dernière intervention 10 mars 2013 - 11 nov. 2007 à 15:24
 patate - 26 mars 2010 à 09:19
Bonjour,

Je suis sous Wamp5. Lorsque je crée des sessions, c'est-à-dire lorsque je me connecte à mon site, un fichier se crée dans le dossier C:\Program Files\wamp\tmp. Ce qui est normal, ce fichier porte le nom : sess_544f1478fe63b08ca967869418635f1b. Mais lorsque je me déconnecte, ce fichier n'est pas supprimé et à force ça fait beaucoup de fichiers qui ne servent pas. Y a-t'il un moyen pour supprimer ces fichiers lorsque je clique sur déconnexion.

Merci.

3 réponses

Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 920
12 nov. 2007 à 10:41
salut,

regarde ces paramètres de php.ini :


session.gc_probability entier
Spécifie la probabilité, exprimée en pourcentage, en conjonction de session.gc_divisor, que la routine gc (garbage collection) soit démarrée à chaque requête. La valeur par défaut est 1. Voir session.gc_divisor pour plus de détails.

session.gc_divisor entier
session.gc_divisor en conjonction avec session.gc_probability définit la probabilité que la routine gc (garbage collection) soit démarrée à chaque début de session. La probabilité est calculée en utilisant gc_probability/gc_divisor, par exemple 1/100 signifie qu'il y a 1 % de chance pour que la routine gc démarre à chaque requête. La valeur par défaut est 100.

session.gc_maxlifetime entier
Spécifie la durée de vie des données sur le serveur, en nombre de secondes. Après cette durée, les données seront considérées comme obsolètes, et supprimées. Les données deviennent obsolètes lors du démarrage de la session.

Note: Si des scripts différents ont des valeurs différentes de session.gc_maxlifetime mais partagent le même endroit pour y stocker les données de session, alors, le script dont la valeur est la plus petite effacera la donnée. Dans ce cas, utilisez cette directive conjointement avec session.save_path.

Note: Si vous utilisez le gestionnaire de sessions par fichier, qui est fourni par défaut, votre système doit garder la trace des dates de dernier accès aux fichiers (atime). La FAT de Windows ne le fait pas, il vous faudra donc trouver un autre système pour gérer les sessions qui ont expiré. Depuis PHP 4.2.3, on utilise mtime (date de modification) au lieu de atime. Ainsi, vous n'aurez plus de souci avec les systèmes de fichiers qui ne gèrent pas atime.
1
Salut Dalida,
Ton message étais vraiment très précieux.Il m'a aider à répondre à une question qui m'a taraudée pendant près d'une semaine et m'a de ce fait beaucoup retardé dans un devoir que j'avais pour 2 semaines
Grandement merci!
0
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 920 > pentium4
14 nov. 2009 à 02:57
salut,

you're welcome !
-;o)
0
Je suis désolé de re-up ce sujet , mais je me retrouve exactement dans la même situation et je ne vois pas ce qu'a écrit dalida peut m'aider...
0
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 920
11 nov. 2007 à 22:51
salut,

comment fais-tu pour te "déloguer" ?

manuel php :

session_destroy() détruit toutes les données associées à la session courante. Cette fonction ne détruit pas les variables globales associées à la session, de même, elle ne détruit pas le cookie de session.

Pour détruire complètement une session, comme faire sortir l'utilisateur, l'identifiant de la session doit également être effacé. Si un cookie est utilisé pour propager l'identifiant de session (comportement par défaut), alors le cookie de session doit être effacé. La fonction setcookie() peut être utilisée pour cela.

Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec.

Exemple 2376. Destruction d'une session avec session_destroy()

<?php

// Initialisation de la session.
// Si vous utilisez un autre nom
// session_name("autrenom")
session_start();

// Détruit toutes les variables de session
$_SESSION = array();

// Si vous voulez détruire complètement la session, effacez également
// le cookie de session.
// Note : cela détruira la session et pas seulement les données de session !
if (isset($_COOKIE[session_name()])) {
    setcookie(session_name(), '', time()-42000, '/');
}

// Finalement, on détruit la session.
session_destroy();

?> 
0
Mais si la session est détruite pourquoi le fichier sess_544f1478fe63b08ca967869418635f1b existe toujours dans le dossier C:\Program Files\wamp\tmp. C'est ce fichier que je veux supprimer.
0