Les SESSIONS

Résolu/Fermé
troubadour2 Messages postés 277 Date d'inscription vendredi 11 juin 2010 Statut Membre Dernière intervention 19 juin 2016 - 9 juin 2011 à 03:51
Meoran Messages postés 1562 Date d'inscription vendredi 28 août 2009 Statut Membre Dernière intervention 8 avril 2015 - 14 juin 2011 à 18:14
Bonjour,

Je suis à la recherche pour savoir comment on peux supprimer une SESSION lorsqu'on se déconnecte avec un lien "déconnexion".
Ma SESSION par défault expire lorsque je ferme le navigateur mais cela ne me convient pas.
Par contre j'ai créé des COOKIES et ça les détruits bien mais pas pour les SESSIONS.
Pouvez-vous m'aider s'ils vous plait.
Un grand merci pour votre aide.

14 réponses

Meoran Messages postés 1562 Date d'inscription vendredi 28 août 2009 Statut Membre Dernière intervention 8 avril 2015 206
9 juin 2011 à 13:36
Pour détruire le cookie de session :

setcookie(session_name(), '', time(), '/');

Définit un cookie du nom de ta session qui doit être détruit immédiatement. Ce qui supprime ton cookie de session...
1
arthezius Messages postés 3538 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 11 septembre 2016 475
9 juin 2011 à 13:43
En effet, une variable de session et un cookie c'est pas la même chose.
Variable de session: $_SESSION['var'];
Cookie: $_COOKIE['var'];

Voir cette page: http://www.lephpfacile.com/cours/17-les-cookies
1
arthezius Messages postés 3538 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 11 septembre 2016 475
9 juin 2011 à 05:24
0
troubadour2 Messages postés 277 Date d'inscription vendredi 11 juin 2010 Statut Membre Dernière intervention 19 juin 2016 1
9 juin 2011 à 06:37
Bonjour

Merci de ta réponse c'est sympa.
Malheureusement je n'arrive pas à supprimer ma SESSION lorsque je fait déconnexion.
Elle se supprime uniquement lorsque je ferme mon navigateur.
Je n'y comprends plus rien.
Si tu as encore des infos.
J'ai fait pas mal de truc mais rien n'y fait.
Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Meoran Messages postés 1562 Date d'inscription vendredi 28 août 2009 Statut Membre Dernière intervention 8 avril 2015 206
9 juin 2011 à 10:26
Salut,

voici mon code qui détruit une session :

Voici le lien qui m'amène à un script qui déconnecte l'utilisateur :
<a href="deconnexion.php">Deconnexion</a>


le fichier deconnexion.php :

session_start();
// destruction session
$_SESSION = array();
session_destroy();

// redirection
header('location:../index.php');
0
troubadour2 Messages postés 277 Date d'inscription vendredi 11 juin 2010 Statut Membre Dernière intervention 19 juin 2016 1
9 juin 2011 à 11:05
Bonjour

J'ai bien mis ton code et le lien comme toi mais lorsque je clique sur le lien
la SESSION est toujours présente il faut que je ferme le navigateur pour la détruire et ça je ne veux pas.
Merci pour votre aide
0
Meoran Messages postés 1562 Date d'inscription vendredi 28 août 2009 Statut Membre Dernière intervention 8 avril 2015 206
9 juin 2011 à 11:53
Fait un print_r($_SESSION) et un echo session_id() avant et après la tentative de déconnexion avec mon code.
0
Meoran Messages postés 1562 Date d'inscription vendredi 28 août 2009 Statut Membre Dernière intervention 8 avril 2015 206
9 juin 2011 à 12:04
Comment sais tu que quelqu'un est connecté ? En d'autres où stockes tu l'identité de celui qui est connecté ?
0
troubadour2 Messages postés 277 Date d'inscription vendredi 11 juin 2010 Statut Membre Dernière intervention 19 juin 2016 1
9 juin 2011 à 13:18
Bonjour

En fait je suis en développement et je regarde dans mon navigateur.

en fait j'ai 1 page avec mon formulaire pour connexion
1 page pour toute la vérif et les teste des variable
et 1 page de déconnexion

et je voudrais vraiment que lorsqu'on se déconnecte ça me supprime le COOKIE"PHPSESSID"

Merci de tout coeur
0
Profil bloqué
9 juin 2011 à 13:25
session destroy ferme la session, il ne détruit en aucun cas le cookie !!!
0
Profil bloqué
9 juin 2011 à 13:46
La je crois que c'est résolu mdr

0
troubadour2 Messages postés 277 Date d'inscription vendredi 11 juin 2010 Statut Membre Dernière intervention 19 juin 2016 1
9 juin 2011 à 15:26
Non pas encore je cherche, je cherche...

Merci
0
Profil bloqué
9 juin 2011 à 15:35
Mais tu cherches quoi ?? ^^'
0
arthezius Messages postés 3538 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 11 septembre 2016 475
9 juin 2011 à 15:41
Oui c'est vrai tu cherches?
Si malgré tout ce qu'on t'as donné ce n'est pas encore clair, demande nous plus de précision et on essayera de t'aider d'avantage.
0
Meoran Messages postés 1562 Date d'inscription vendredi 28 août 2009 Statut Membre Dernière intervention 8 avril 2015 206
9 juin 2011 à 15:41
Le setcookie marche très bien pour la suppression du cookie de session j'ai essayé sur mon projet en cours, no soucis...
0
Profil bloqué
9 juin 2011 à 15:43
Il cherche il cherche.. mdr troubadour, t'es super !
0
arthezius Messages postés 3538 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 11 septembre 2016 475
9 juin 2011 à 15:54
Faut pas rigoler. On passe tous par là à un moment...
0
troubadour2 Messages postés 277 Date d'inscription vendredi 11 juin 2010 Statut Membre Dernière intervention 19 juin 2016 1
9 juin 2011 à 16:12
c'est sympa de partager mon soucis.

je dois passer à côté de quelque chose mais quoi?
c'est un mystère.

A+
0
Profil bloqué
9 juin 2011 à 16:17
Mdr...

Tu ne voudrais pas partager un peu ton questionnement ^^ ?
0
arthezius Messages postés 3538 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 11 septembre 2016 475
9 juin 2011 à 17:19
Et/ou nous mettre tout ou partie de ton code afin qu'on puisse éventuellement trouver, si besoin est, ce qui te fait bloquer.
En tout cas, il nous faut d'avantage de précision si tu veux qu'on t'aider à avancer.
0
troubadour2 Messages postés 277 Date d'inscription vendredi 11 juin 2010 Statut Membre Dernière intervention 19 juin 2016 1
Modifié par troubadour2 le 14/06/2011 à 09:27
Bonjour

Voilà je recommence cette semaine avec toujours mon problème de SESSION.
En fait PHP génére une SESSION à l'ouverture de mon site qui est PHPSESSID.

Je voudrais la supprimer lorsque les utilisateurs se déconnectent via un lien "déconnexion".

Pour me déconnecter et supprimer mon COOKIE que j'ai créé cela fonctionne mais pas PHPSESSID.
<?php if ($_COOKIE['COOKIE_ESC']){setcookie('COOKIE_ESC', '', time() - 1, null, null, false, false);}?>   

Merci beaucoup de votre aide
0
Meoran Messages postés 1562 Date d'inscription vendredi 28 août 2009 Statut Membre Dernière intervention 8 avril 2015 206
14 juin 2011 à 10:21
Personnellement, il me donne un sessid différent quand je détruis le cookie et que je refasse un session_start par la suite...
0
troubadour2 Messages postés 277 Date d'inscription vendredi 11 juin 2010 Statut Membre Dernière intervention 19 juin 2016 1
14 juin 2011 à 13:24
Bonjour

Merci tu peux me donner ton code pour voir comment tu a réussis à détruire PHPSESSID.

Chez moi ça ne veux pas le faire.

Merci beaucoup
0
Meoran Messages postés 1562 Date d'inscription vendredi 28 août 2009 Statut Membre Dernière intervention 8 avril 2015 206
Modifié par Meoran le 14/06/2011 à 13:36
session_start();

$_SESSION = array();
session_destroy();
setcookie(session_name(), '', time(), '/');
header('location:../index.php');

Un session_id() avant et un après un nouveau session_start() me donne un id différent...
0
troubadour2 Messages postés 277 Date d'inscription vendredi 11 juin 2010 Statut Membre Dernière intervention 19 juin 2016 1
14 juin 2011 à 14:40
Bonjour

Nickel ça fonctionne et grand merci 10 jours que je suis dessus.
OUF..............
Merci
0
Meoran Messages postés 1562 Date d'inscription vendredi 28 août 2009 Statut Membre Dernière intervention 8 avril 2015 206
14 juin 2011 à 18:14
De rien ;)
0