Page 1 sur 1

une connexion cocernat le criptage du mot de passe

Posté : 15 mars 2007, 23:57
par laetis
re bonjour
voici mon probleme
dans ma page inscription j'ai declarer
<?php 
if(isset($_POST['motdepasse']))      $motdepasse= md5($_POST['motdepasse']);
else      $motdepasse="";?>
puis dans mon formulaire j'ai mis action="add.php" afin qu'il aille verifier les code et surtout j'ai mis type="password" pour que mon mot de passe soit cripté lorsque l'on ecrit

ensuite dans ma page connexion j'ai remi un formulaire ou l'on retrouve le mot de passe tjs cripté pis un action="verif.php" pour qu'il aille me chercher le mot de passe et le login dans ma base
seulement dans ma page verif je ne sais pas ou remettre le fait q'uil soit cripté ce qui fé kil me dit que mon login et mauvais
voici mon code de la page verif
<?php
require_once('connexionalabase.php'); ?>
<?php
$loginOK = false;  
// On n'effectue les traitement qu'à la condition que 
// les informations aient été effectivement postées
if ( isset($_POST) && (!empty($_POST['login'])) && (!empty($_POST['motdepasse'])) ) {
  extract($_POST);  
  // On va chercher le mot de passe afférent à ce login
  $sql = "SELECT login, motdepasse FROM utilisateurs WHERE login = '".addslashes($login)."'";
  $req = mysql_query($sql) or die('Erreur SQL : <br />'.$sql);
  // On vérifie que l'utilisateur existe bien
  if (mysql_num_rows($req) > 0) {
     $data = mysql_fetch_assoc($req);
    // On vérifie que son mot de passe est correct
    if ($motdepasse == $data['motdepasse']) {
     $loginOK = true;
    }
  }
}
// Si le login a été validé on met les données en sessions
if ($loginOK) {
header('location:contactformulairok.php');
exit;
}
else {
header('location:connexionechec.php');
}
?>
savez vous comment faire pour qu'il soit cripté de la meme facon ?

Posté : 16 mars 2007, 00:09
par zeus
Modération :
laetis, afin d'améliorer la lisibilité de ton message,
pense à utiliser les balises [code] ou [php] (selon le langage utilisé).

Elles sont disponibles au-dessus de la zone de saisie de ton message
lorsque tu postes un nouveau message.

Des indications sont disponibles sur la manière de mettre en forme vos messages dans la FAQ

Posté : 16 mars 2007, 00:38
par laetis
d'accord pardon
tu n'as pas de solution a mon probleme ?

Posté : 16 mars 2007, 09:38
par zeus
Puisque tu as haché le mot de passe lors de l'insertion dans la base de données, la valeur que tu extrait de la base ($data['motdepasse'])est elle aussi hachée

Donc, il faut que tu haches la valeur que le membre à saisi dans le formulaire pour la comparer avec la valeur extraite de la base de données
if (md5($motdepasse) == $data['motdepasse']) {