Effacer des variables globales
Bonjour
Je cherche comment effacer des variables de session et de serveur dans une opération de déconnexion et ça ne marche pas du tout malgré pas mal de temps à consulter les docs et les messages.
J'effectue l'identification suivante :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| session_start();
if (! isset($_SERVER['PHP_AUTH_USER']) || ! isset($_SERVER['PHP_AUTH_PW']) ||
($_SERVER['PHP_AUTH_USER'] != "r") || ($_SERVER['PHP_AUTH_PW'] != "r"))
{
header('WWW-Authenticate: Basic realm="l\'accès à l\'administration du site"');
header('HTTP/1.0 401 Unauthorized');
echo "Accès non autorisé";
exit();
}
// création d'un variable de session
$_SESSION['utilisateur'] = "Ok";
header("Location: Admin.php"); |
Quand l'utilisateur se déconnecte je lance le code suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| session_start();
$_SESSION = array(); //Ecrase les variables de sessions en recréant un tableau vide
$_SESSION['utilisateur'] = "No";
if (isset($_COOKIE[session_name()]))
{
setcookie(session_name(), '', time()-42000, '/');
}
session_destroy();
$_SERVER['PHP_AUTH_USER'] = "";
$_SERVER['PHP_AUTH_PW'] = "";
unset($_SERVER['PHP_AUTH_USER']);
unset($_SERVER['PHP_AUTH_PW']);
header("Location: Index.php"); |
Malheureusement mes variables ne semblent pas effacées. quand je relance l'identification $_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW'] et $_SESSION['utilisateur'] existent toujours et je ne repasse pas par la fenêtre d'identification.
Quelqu'un aurait-il une idée de ce qui ne va pas dans mon code ou ma façon de procéder ?
Merci