[RESOLU] password_verify fonctionnement

Mammouth du PHP | 620 Messages

14 avr. 2017, 13:51

Bonjour,j'ai un petit soucis de connexion avec un de mes codes.
le problème est que le login et le mot de passe que je rentre sont correct et bien en base de données mais apparemment le "if (password_verify($_POST['mdpass'], $mdp)) { " ne fonctionne pas.
dans le else j'ai ajouté un echo pour bien faire la comparaison entre se qui est saisi et ce qui est en base. J'ai exactement la même chose mais j'ai quand même "erreur d\'authentification. utilisateur ou mot de passe incorrecte"

Code : Tout sélectionner

if (password_verify($_POST['mdpass'], $mdp)) { // On ouvre la session session_start(); // On enregistre le login en session $_SESSION['utilisateur'] = $login; // On redirige vers le fichier admin.php header('Location:/'.$_SESSION["chemin"].'/'); exit(); //echo 'session : '.$_SESSION['utilisateur']; } else { echo 'log bdd : '.$login. ' - log form : ' .$_POST["utilisateur"]. '<br/>mdp bdd : '.$mdp. ' - log form : ' .$pass; $errorMessage = '<br/>erreur d\'authentification. utilisateur ou mot de passe incorrecte'; }

Mammouth du PHP | 620 Messages

14 avr. 2017, 14:29

Je viens de faire un test sans passer par la base de donnée et j'ai toujours le même problème.
le mot de passe est 'monpass' et lorsqu'il est passé en sha256 sa donne 'a89621d2d0abc12490a55b2c66680c7893cc1e537ffd035e8811c3ad6565734c'

Code : Tout sélectionner

<?php $pass = hash('sha256', 'monpass'); if (password_verify('monpass' ,$pass)) { // On ouvre la session session_start(); // On enregistre le login en session, un ID serait interressant afin de retrouver simplement les choses qui appartient à l'utilisateur connecter (il ne faut pas faire de jointure avec un nom / pseudo $_SESSION['utilisateur'] = $login; echo 'ok'; exit(); } else { echo '<br/>erreur d\'authentification. utilisateur ou mot de passe incorrecte'; } ?>

Mammouth du PHP | 2703 Messages

14 avr. 2017, 14:35

il faut lire la doc : http://php.net/manual/fr/function.password-verify.php
" hash Un hachage créé par la fonction password_hash()."
et donc pas par la fonction hash

Mammouth du PHP | 620 Messages

14 avr. 2017, 18:15

Merci pour le lien effectivement :)