Conditionner un login et mot de passe en php
Bonjour, svp j'aimerai savoir comment conditionner un mot de passe et un login en php avec les information contenue dans la base de donnée
1 réponse
-
Bonjour,
C'est plutôt vague comme question !
//Si l'utilisateur essaye de se connecter if(!empty($_POST)) { $errors = ''; if(!isset($_POST['username']) OR empty($_POST['username'])) { $errors .= 'Vous avez oublier le nom d\'utilisateur.<br />'; } if(!isset($_POST['pass']) OR empty($_POST['pass'])) { $errors .= 'Vous avez oublier le mot de passe.'; } //Si aucune erreur if(empty($errors)) { $req = $bdd->prepare('SELECT * FROM users WHERE username = :user'); $req->bindParam(':user', $_POST['username'], PDO::PARAM_STR); $req->execute(); $data = $req->fetch(); //Si l'utilisateur existe dans la BD if(!empty($data)) { //Si le mot de passe est correct, alors la connexion a réussi if($data['passw'] == sha1($_POST['pass'])) { //Exemple $_SESSION['username'] = $_POST['username']; } else { $errors .= 'Mot de passe incorrect.'; } } else { $errors .= 'Nom d\'utilisateur incorrect.'; } } //Si il y a des erreurs, on affiche if(!empty($errors)) echo $errors; }
Voila, donc voici un script assez simple !
- J'ai utiliser PDO comme méthode de connexion a la base de données.
- Les mot de passes enregistrés dans la BD sont crypté avec la fonction sha1.
- Le formulaire doit contenir 2 champs textes (username et pass).
- La table des utilisateurs se nomme "users" et doit contenir au moins le champ "username" et "passw".
Mettez en résolu quand c'est résolu -.- ...