Problème connexion avec password crypté

Fermé
webflo - 6 mai 2014 à 18:56
Nhay Messages postés 838 Date d'inscription vendredi 2 novembre 2012 Statut Membre Dernière intervention 17 décembre 2015 - 7 mai 2014 à 12:49
Bonjour j'ai un soucis avec mon script inscription qui remplit ma BDD

// Insertion du message à l'aide d'une requête préparée
$req = $bdd->prepare('INSERT INTO eleves (nom, prenom, date_de_naissance, sexe, classe, sport) VALUES(?, ?, ?, ?, ?, ?)');

$req->execute(array($_POST['nom'], $_POST['prenom'], $_POST['date_de_naissance'], $_POST['sexe'], $_POST['classe'], $_POST['sport'] ));


$req = $bdd->prepare('INSERT INTO users (pseudo, password, nom, prenom, mail) VALUES(?, ?, ?, ?, ?)');
$_POST['mdp'] = sha1(uniqid(rand()));
$req->execute(array($_POST['pseudo'], $_POST['mdp'], $_POST['nom'], $_POST['prenom'], $_POST['mail']));




header('Location: accueil.php'); ?>

et mon script de connexion
$_POST['password'] = $password;
$password = sha1($password);
$sql = 'SELECT count(*) FROM users WHERE pseudo="'.mysql_real_escape_string($_POST['pseudo']).'" AND password="'.mysql_real_escape_string($password).'"';

$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);

mysql_free_result($req);
mysql_close();






// si on obtient une réponse, alors l'utilisateur est un membre
if ($data[0] == 1) {
$_SESSION['prenom'] = 'Hubert';
session_start();


$_SESSION['pseudo'] = $_POST['pseudo'];



header ('location: ../membres/accueilad.php');

exit();


}


}
// si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son pseudo, soit dans son mot de mdpe
elseif ($data[0] == 0) {
$erreur = 'Compte non reconnu.';


}
// sinon, alors la, il y a un gros problème :)
else {
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}


}

?>

La base de donnée est bien remplis mais la connection ne s'effectue pas à cause d'une mauvaise lecture du mot de passe mais je n'arrive pas à trouver l'erreur.

3 réponses

Nhay Messages postés 838 Date d'inscription vendredi 2 novembre 2012 Statut Membre Dernière intervention 17 décembre 2015 126
6 mai 2014 à 20:39
Bonjour,
Je viens de voir cette ligne :
$_POST['password'] = $password;

Tu n'aurai pas inversé les deux ?
0
Oui mais ça ne résous pas le problème :/
0
Nhay Messages postés 838 Date d'inscription vendredi 2 novembre 2012 Statut Membre Dernière intervention 17 décembre 2015 126
7 mai 2014 à 12:49
Sinon, dans ta connexion, tu effectue un mysql_fetch_array mais tu tente d'accéder à $data[0], essaye plutôt un fetch_row
0