Vérification dans base de donnée

Vérification dans base de donnée - PHP - Programmation

Marsh Posté le 18-01-2018 à 19:03:23    

Bonjour,
Je tombe sur ce problème depuis et je vous demande votre aide. J'aimerais vérifier que l'username existe dans ma bdd mais ça ne marche pas, meme avec des noms d'utilisateurs qui sont déja enrégistré ma bdd. Voici l'erreur que ça m'affiche : Username/Password do not match.

 

Voici mon code :

Code :
  1. if(isset($_POST['valider'])){
  2. $username = htmlentities($_POST['username']);
  3. $password = htmlentities($_POST['password']);
  4. $password2 = htmlentities($_POST['password2']);
  5. if (empty($_POST['username'])) {
  6.  $error = true;
  7.  $usernameError = "Please enter your username .";
  8. } else {
  9.  if (empty($_POST['password'])) {
  10.   $error = true;
  11.   $passwordError = "Please enter your password .";
  12.  } else {
  13.   if (empty($_POST['password2'])) {
  14.    $error = true;
  15.    $password2Error = "Please confirm the password .";
  16.   } else {
  17.    if ($_POST['password'] != $_POST['password2']) {
  18.     $error = true;
  19.     $passworddifferentError = "Passwords are not the same .";
  20.    } else {
  21.     $pdo = new PDO('mysql:host=localhost;dbname=projet;charset=UTF8', 'root',  '');
  22.     if (!$pdo) {
  23.      echo "Please check your information and try again";
  24.     } else {
  25.      $query = $pdo->prepare('SELECT * FROM `client` WHERE username = :username AND password = :password');
  26.      $query->execute(array('username' => $username, 'password' => $password));
  27.      if ($reponse = ($query)) {
  28.       if ($reponse->fetchColumn() == 1) {
  29.        $_SESSION['username'] = $username;
  30.        header("location: accueil.php" );
  31.       } else {
  32.        $error = true;
  33.        $noncorrespondError = "Username/Password do not match .";
  34.       }
  35.      }
  36.     }
  37.    }
  38.   }
  39.  }
  40. }
  41. }

Message cité 1 fois
Message édité par iamlouky le 18-01-2018 à 19:10:45
Reply

Marsh Posté le 18-01-2018 à 19:03:23   

Reply

Marsh Posté le 18-01-2018 à 20:40:48    

iamlouky a écrit :

Code :
  1. if (...) {
  2. } else {
  3. if (...) {
  4. } else {
  5.   if (...) {



 [:psywalk]  
 
Tu as quelque chose contre les else if?
 
Sinon le plus simple reste de regarder ce que retourne $reponse->fetchColumn() pour comprendre.


---------------
C'est en écrivant n'importe quoi qu'on devient n'importe qui.
Reply

Marsh Posté le 18-01-2018 à 20:46:36    

MaybeEijOrNot a écrit :


 [:psywalk]  
 
Tu as quelque chose contre les else if?
 
Sinon le plus simple reste de regarder ce que retourne $reponse->fetchColumn() pour comprendre.


 
J"ai mal codé les conditions, c'est bien ça?

Reply

Marsh Posté le 18-01-2018 à 20:54:52    

Du coup je ne sais pas vers quoi porte ta dernière question.
 
Else if : http://php.net/manual/fr/control-structures.elseif.php
 
Et pour la deuxième partie de mon message, fais le test.
 
Sinon pour finir ce serait bien de stocker les passwords sous une forme hashée et avec même en prime un petit sel, ça ne coûte pas grand chose et ça évite que si quelqu'un arrive à drop ta table il puisse facilement utiliser les logins : http://php.net/manual/fr/faq.passw [...] stpractice


---------------
C'est en écrivant n'importe quoi qu'on devient n'importe qui.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed