Bonjour,
j'utilise les sessions pour gérer la connexion à l'espace admin :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 if ($mdp === DEFAULT_ADMIN_PWD) { // connexion admin if (User::isConnected() === false) { session_start(); $_SESSION['is_admin'] = true; ...
méthode isConnected :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 public static function isConnected(): bool { if (session_status() === PHP_SESSION_ACTIVE) { return isset($_SESSION['is_admin']) && $_SESSION['is_admin'] === true; } return false; }
Plus loin dans le code, je veux m'assurer qu'on est connecté : User::checkAdminGrants(); et checkAdminGrants :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 public static function checkAdminGrants(): void { if (self::isConnected() === false) { header('location: '.URL_LOCALHOST); exit; } }
Selon la doc (https://www.php.net/manual/en/functi...ion-status.php) session-status devrait retourner PHP_SESSION_ACTIVE mais en fait elle retourne PHP_SESSION_NONE et du coup, au lieu de rester dans l'espace admin, on revient sur la page d'accueil.
Quelle pourrait être la raison ?
Partager