[PHP] logout

logout [PHP] - PHP - Programmation

Marsh Posté le 26-10-2003 à 21:10:09    

Comment faire une fonction de logout en php ?
 
J'ai une frame à gauche avec des menus qui appellent des fenêtres qui s'affichent dans la frame de dtoite.
 
Lorsque j'appelle la page logout
J'essaye toutes sortes de choses,

Code :
  1. unset( $_SESSION );
  2. $_SERVER = array();
  3. unset($_SERVER['PHP_AUTH_USER']);
  4. unset($PHP_AUTH_USER);


 
mais pas moyen.
 
Si je reclique sur un lien de ma frame de gauche,
je suis toujours authentifié.
Y a-t-il seulement un moyen, autre que de fermer la fenêtre ?

Reply

Marsh Posté le 26-10-2003 à 21:10:09   

Reply

Marsh Posté le 26-10-2003 à 21:20:41    

essaies ca :  
$_SESSION = array();


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 27-10-2003 à 00:46:05    

session_destroy() aussi

Reply

Marsh Posté le 27-10-2003 à 09:56:28    

Si tu veux détruire toute la session et son contenu :  
 
 
 

Code :
  1. <?
  2. session_start();
  3. $_SESSION=array();//on efface toutes les variables de la session
  4. session_destroy(); // Puis on détruit la session
  5. header("location: index.php" ) ; // On renvoie ensuite sur la page d'accueil
  6. ?>


 
Si tu ne veux détruire que certaines variables de session

Code :
  1. <?
  2. session_start();
  3. unset($_SESSION["var"]); // On efface la variable var
  4. header("location: index.php" ) ; // On renvoie ensuite sur la page d'accueil
  5. ?>


 
(utile pour un site multilingue avec gestion des utilisateurs, par exemple : l'utilisateur peut vouloir se déconnecter (perte des droits d'accès sur certaines parties du site) mais tu ne perds pas les infos sur sa langue de navigation)
 
EIDT : bon ben autant pour moi : $_SESSION=array() est préférable pour détruire toutes les variables de sessions


Message édité par deliriumtremens le 27-10-2003 à 10:04:26
Reply

Marsh Posté le 27-10-2003 à 09:59:25    

$_SESSION = array(); // détruit les variables contenues dans la session
session_destroy(); // détruit la session
 
 
session_unset  détruit toutes les variables de la session courante.
Note
 
Si vous utilisez $_SESSION (ou $HTTP_SESSION_VARS ), utilisez plutôt ceci : $_SESSION = array();
 
Sources: http://www.nexen.net

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed