authentification par formulaire - PHP - Programmation
Marsh Posté le 23-10-2005 à 20:55:48
Citation : "foncverif.php" contient la fonction "verification( $nom, $motdepasse )": elle va lire ds une BbD si les données saisies ds le formulaire y figurent et retourne VRAI ou FAUX. |
Tu veux dire qu'elle vérifie la validité du login/mot de passe ? Sinon je vois pas l'intérêt après avoir vérifié au isset.
Sinon je vois pas pourquoi ça rentrerait pas dans ton else. Ca t'affiche quoi ton echo $message ?
Marsh Posté le 23-10-2005 à 21:05:08
Oui pour l'interet de la BdD: verif de la validité.
Pour le isset: verif du champ rempli ou pas.
affichage de echo $message:
Lorsque l'identification est correcte: 'vous êtes correctement identifié'
Lorsque l'identification est incorrecte:'Mauvais identifiant ou mot de passe', c'est le 1er else.
Lorsque 1 champs vide ou les deux vides:'Mauvais identifiant ou mot de passe'; je ne rentre pas ds le 2nd else :-(.
Marsh Posté le 23-10-2005 à 21:05:27
BONJOUR,
moi je vois pas ce qui ne va pas dans ton code (AND et && c'est pareil) parce que si l'un des champs est vide ca va forcément dans ton esle...
T'es certain qu'il n'y a pas un autre bou de code qui faut foirer la suite?
Marsh Posté le 23-10-2005 à 21:05:29
Oui pour l'interet de la BdD: verif de la validité.
Pour le isset: verif du champ rempli ou pas.
affichage de echo $message:
Lorsque l'identification est correcte: 'vous êtes correctement identifié'
Lorsque l'identification est incorrecte:'Mauvais identifiant ou mot de passe', c'est le 1er else.
Lorsque 1 champs vide ou les deux vides:'Mauvais identifiant ou mot de passe'; je ne rentre pas ds le 2nd else :-(.
Marsh Posté le 23-10-2005 à 21:11:47
Impeccable avec !empty() :-) ! Et vu pour la différence avec isset().
Muecho gracias.
Marsh Posté le 23-10-2005 à 21:21:14
Ah ben oui mince c'était bateau. -_-
Marsh Posté le 23-10-2005 à 20:46:18
Un utilisateur s'authentifie via un formulaire - script authentif.php, variables "pseudo" et "motdepasse".
A la validation, "verif.php" est appelé - script ci - dessous.
"foncverif.php" contient la fonction "verification( $nom, $motdepasse )": elle va lire ds une BbD si les données saisies ds le formulaire y figurent et retourne VRAI ou FAUX.
Mon pbm.: si l'un des champs du formulaire, ou les deux, ne sont pas remplis - donc restent vides -, je n'affiche pas le message correspondant; autrement dit je ne rentre jamais ds le dernier "else" de "verif.php".
Le reste est OK.
Auriez - vous des idées?
D'autre part entre les deux "isset", il faut mettre "AND" ou "&&"? Le comportement est ie ds les deux cas.
Ci - dessous "verif.php".
Merci!
<?php
// initialisation de la session
session_start() ;
include ('foncverif.php');
// si on a reçu les données d'un formulaire :
if ( isset( $_POST['pseudo'] ) AND isset( $_POST['motdepasse'] ))
{
// on les récupère
$nom = $_POST['pseudo'] ;
$motdepasse = $_POST['motdepasse'] ;
// on teste si le mot de passe est valide :
if ( verification( $nom, $motdepasse ) )
{
// on sauvegarde donc son nom dans la session
$_SESSION['nom'] = $nom ;
$message = 'vous êtes correctement identifié' ;
}
else {
// sinon on avertit l'utilisateur :
$message = 'Mauvais identifiant ou mot de passe' ;
$message .='<br><a href="authentif.php">retour1</a>' ;
}
}
else {
// un des champs n'est pas rempli
$message = 'le login ou le mot de passe est vide' ;
$message .='<a href="authentif.php">retour2</a>' ;
}
?>
<html>
<head><title>Identification</title></head>
<body><p>
<?php echo $message ?>
</p></body>
</html>