Par Valentin Brosseau / @c4software
Rien de magique : une page normale…
précédée d'un test sur la session.
if (!isset($_SESSION['user'])) {
// Pas connecté !
}Toute la « connexion » tient dans une clé de $_SESSION.
$whitelist = ['home', 'about'];
if (isset($_SESSION['user'])) {
$whitelist[] = 'bart';
}Question : que voit un visiteur non connecté qui demande ?page=bart ?
La page n'est pas dans sa liste : il retombe sur l'accueil.
Pas d'erreur, pas de message, pas de fuite d'information.
La meilleure protection, c'est l'absence.
Se déconnecter = faire oublier l'utilisateur.
Question : unset($_SESSION['user']) ou session_destroy() ? Quelle différence ?
if ($_POST['email'] === "admin@exemple.com") { ... }Pour comprendre le mécanisme : oui.
Pour un vrai site : jamais. Rendez-vous en seconde partie.
isset($_SESSION[...]).header() + die(), les deux, toujours.Place au TP 🚀