Erreur Cookie

Par FrenchGaming Team, il y a 10 ans


Bonjour,

Voila je rencontre un petit problème avec mon code.

Ce que je fais

J'ai suivi le tutoriel de Grafikart sur la gestion d'espace membre (refactorisation)

logout.php require '../Library/Autoloader.php'; Autoloader::register(); App::getAuth()->logout(); Session::getInstance()->setFlash('success', 'Vous êtes maintenant déconnecté'); App::redirect('../login.php'); public function logout(){ setcookie('remember', NULL, -1); $this->session->delete('auth'); }

Ce que je veux

Je cherche a faire en sorte que le systeme marche en se deconnectant le cookie s'éfface et que cela me reconnecte pas automatiquement apres deconnexion

Ce que j'obtiens

Quand je me déconnecter sa me renvoir sur la page account.php avec en message vous etes déconnecter mais le cookie est toujours present je peut pas me déconnecter

5 réponses

Grafikart, il y a 10 ans

Mmh c'est bizarre,
essaie de var_dump les cookies après la partie logout, voir si l'effacement se passe correctement

Grafikart, il y a 10 ans

Essaie de unset($_COOKIE['remember']) en plus pour voir dans ton logout

FrenchGaming Team, il y a 10 ans
public function connectFromCookie($db){ if(isset($_COOKIE['remember']) && !$this->user()){ $remember_token = $_COOKIE['remember']; $parts = explode('==', $remember_token); $user_id = $parts[0]; $user = $db->query('SELECT * FROM users WHERE id = ?', [$user_id])->fetch(); if($user){ $expected = $user_id . '==' . $user->remember_token . sha1($user_id . 'ratonlaveurs'); if($expected == $remember_token){ $this->connect($user); setcookie('remember', $remember_token, time() + 60 * 60 * 24 * 7); } else{ setcookie('remember', null, -1); } }else{ setcookie('remember', null, -1); } } }