par
VaN » 08 avr. 2010, 12:59
Disons que tu as la base, mais ton script n'est pas vraiment au point.
Déjà, il ne permet pas de gérer plusieurs comptes, via une base de données. Si c'est pour accéder à une page que tu dois être le seul à pouvoir voir, ça va. Mais si c'est pour un espace membre, ça ne va plus.
De plus, l'accès à ta page maj.php n'est au final pas du tout sécurisé. Que se passe t-il su un utilisateur tente d'afficher
http://www.tonsite.com/maj.php ? Et bien aucun contrôle n'est fait. Il affiche la page correctement.
Dans ta page maj.php, il faut que tu vérifie qu'une session à bien été créée sur ta page de sécurité. Et sur ta page de sécurité, une fois que le test de login/mot de passe est correct, avant de rediriger vers maj.php, il faut que tu créés cette session, ainsi :
session_start();
$_SESSION["authed"] = true;
Ensuite, sur ta page maj.php, tu vérifie qu'une session est ouverte :
session_start(); // à mettre tout en haut de ta page maj.php
if(isset($_SESSION["authed"]) && $_SESSION["authed"] === true) {
// C'est bon
}
else {
// Aucune session n'est ouverte, ca signifie que l'utilisateur à afficher la page maj.php directement via son navigateur, on le redirige vers la page d'identification
}
Disons que tu as la base, mais ton script n'est pas vraiment au point.
Déjà, il ne permet pas de gérer plusieurs comptes, via une base de données. Si c'est pour accéder à une page que tu dois être le seul à pouvoir voir, ça va. Mais si c'est pour un espace membre, ça ne va plus.
De plus, l'accès à ta page maj.php n'est au final pas du tout sécurisé. Que se passe t-il su un utilisateur tente d'afficher http://www.tonsite.com/maj.php ? Et bien aucun contrôle n'est fait. Il affiche la page correctement.
Dans ta page maj.php, il faut que tu vérifie qu'une session à bien été créée sur ta page de sécurité. Et sur ta page de sécurité, une fois que le test de login/mot de passe est correct, avant de rediriger vers maj.php, il faut que tu créés cette session, ainsi :
[php]session_start();
$_SESSION["authed"] = true;[/php]
Ensuite, sur ta page maj.php, tu vérifie qu'une session est ouverte :
[php]session_start(); // à mettre tout en haut de ta page maj.php[/php]
[php]if(isset($_SESSION["authed"]) && $_SESSION["authed"] === true) {
// C'est bon
}
else {
// Aucune session n'est ouverte, ca signifie que l'utilisateur à afficher la page maj.php directement via son navigateur, on le redirige vers la page d'identification
}[/php]