Bonjour,
J'ai un site (joomla) sur un serveur et dans une page de ce site j'utilise un wrapper pour appeler une page situé sur le sous domaine de ce site me permettant de gérer la connexion d'utilisateurs, en gros j'ai :
-un site joomla lambda sur my_domaine.fr
-un script de connexion sur sub.my_domaine.fr
tout fonctionne bien excepté sous chrome ou après m'être déconnecté et reconnecté avec un autre compte je reste connecté avec le premier compte (en gros j'ai les variable de session toujours aux valeurs du premier compte)
je gère mes sessions comme ceci :
connexion:
déconnexion:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 session_set_cookie_params(0, '/', '.my_domaine.fr'); session_start(); // vérification, gestion d'erreur ... $_SESSION['connected'] = true; $_SESSION['name'] = $_POST['username'];
De plus malgré le "session_set_cookie_params(0, '/', '.my_domaine.fr');" le cookie stocké (tout navigateur confondu) est toujours enregistré comme sub.my_domain.fr.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 session_set_cookie_params(0, '/', '.my_domaine.fr'); session_start(); $_SESSION['connected'] = false; session_unset(); session_destroy(); $_SESSION = array();
Avez vous une idée pour éviter cela ?
Update: suite à des test, google chrome conserve en fait la page en cache et un ctrl F5 résout le problème ... il me semblai pourtant avoir lu quelque par que suite à un session_start() le cache étant désactivé.
J'ai tenté de placer:
Sans succès.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Header('Cache-Control: no-cache'); Header('Pragma: no-cache');
Édit a nouveau:
avec un Header("Expires: " . gmdate("D, d M Y H:i:s", time()) . " GMT"); ca fonctionne
Partager