par
zeus » 04 nov. 2007, 12:46
D'une manière générale, pour éviter des possibilités de tentatives de piratages simples en faisant "Précédent/suivant" qui repasse par la fiche de validation, j'ai tendance à préférer un script qui teste si l'authentification est OK ou non et qui redirige dans tout les cas avec la fonction header().
Comme ça, le script de validation du mot de passe est transparent pour le navigateur.
De même, je prévois toujours les cas que j'accepte et refuse les autres. Dans ton exemple,
Kaoteknik, si $_POST['pass'] n'est pas défini, l'authentification est acceptée.
Le principe que je suis permet de ne pas laisser la place à une erreur de code que nous sommes tous susceptibles de faire.
Un exemple simple serait le suivant
$pass = $_POST['pass'];
// Si le pass a été saisi et qu'il est valide
if (isset($pass) && $pass == "xyz") {
// Redirection vers la page de réussite du login
header('index_connecte.php');
// Le exit() permet d'arrêter le script si le header() n'a pas fonctionné
exit();
}
// Erreur de connexion
else {
// Redirection vers la page d'erreur
header('erreur.php');
// Le exit() permet d'arrêter le script si le header() n'a pas fonctionné
exit();
}
D'une manière générale, pour éviter des possibilités de tentatives de piratages simples en faisant "Précédent/suivant" qui repasse par la fiche de validation, j'ai tendance à préférer un script qui teste si l'authentification est OK ou non et qui redirige dans tout les cas avec la fonction header().
Comme ça, le script de validation du mot de passe est transparent pour le navigateur.
De même, je prévois toujours les cas que j'accepte et refuse les autres. Dans ton exemple, [b]Kaoteknik[/b], si $_POST['pass'] n'est pas défini, l'authentification est acceptée.
Le principe que je suis permet de ne pas laisser la place à une erreur de code que nous sommes tous susceptibles de faire. ;)
Un exemple simple serait le suivant
[php]$pass = $_POST['pass'];
// Si le pass a été saisi et qu'il est valide
if (isset($pass) && $pass == "xyz") {
// Redirection vers la page de réussite du login
header('index_connecte.php');
// Le exit() permet d'arrêter le script si le header() n'a pas fonctionné
exit();
}
// Erreur de connexion
else {
// Redirection vers la page d'erreur
header('erreur.php');
// Le exit() permet d'arrêter le script si le header() n'a pas fonctionné
exit();
}[/php]