Posez votre question Signaler

Crypter champs sql md5 [Résolu]

sangokudu92 133Messages postés 30 mai 2008Date d'inscription 15 juin 2011Dernière intervention - Dernière réponse le 3 juin 2008 à 13:46
Bonjour,
je voudrai savoir si la syntaxe suivante est correct pour crypter une propriété sql, car chez moi sa ne marche pas:
$pass = md5 ($_POST['pass']);

Je ne souhaite pas utilisé la fonction PASSWORD.
Merci
Lire la suite 

Crypter champs sql md5 »

7 réponses
Réponse
+1
moins plus
normalement oui
$pass = MD5($_POST['pass']);
c'est la bonne syntaxe ^^
qu'est ce qui ne fct pas chez toi ? :)
( penses a avoir un champs d'une taille suffissante dans ta base de données ;) )
et moi je te conseille vivement de crypter en SHA1 ^^
http://fr.wikipedia.org/wiki/MD5
sangokudu92- 3 juin 2008 à 09:59
merci pr ta reponse mais je n'ai pas vu la difference ac mon code :S^^.
Voila ma requete:
//Voir si l'utilisateur existe déjà
$req1 = mysql_query("SELECT * FROM clients WHERE pseudo_clt='".$pseudo_clt."'");

if(mysql_fetch_row($req1)!=NULL)
{
     echo $msg_pseudo;
}
else
{
   $req2 = mysql_query("INSERT INTO clients (nom_clt,pseudo_clt,pass) VALUES ('".$nom_clt."','".$pseudo_clt."','".$pass."')") or die(mysql_error());
echo $msg_OK;
}
Brachior- 3 juin 2008 à 12:28
la difference c'est que toi tu test l'existence d'une variable que tu viens de créer ..
je m'explique .. quand tu fais :
$pass = $_POST['pass'];
si la variable $_POST['pass'] n'existe pas .. elle sera créée et contiendra rien ^^
et j'viens d'me rendre compte que t'as 2fois la lign : $pseudo_clt = $_POST['pseudo_clt']; ^^
et ta variable $req2 ne sert a rien ^^

enfin bn ^^ y a pas d'raisons que ca ne fct pas Oo
a moins qu'un de tes champs ( ou plusieurs ^^ ) soient mal déclaré
( par exemple si tu as mis un int pour le password ou un truc du genre )
ou encore qu'un de tes champs manque a l'appel ^^

essayes ta requete directement sur phpmyadmin ^^
sangokudu92- 3 juin 2008 à 13:46
Mon champ pass est défini en varchar(32), et la requête marche tres bien ds phpmyadmin.
La $req2 sert a entrer les données de l'utilisateur dans la base, et la req1 sert a voir si l'utilisateur est deja enregistrer.
En ce qui concerne la ligne pseudo, c'est juste une mauvaise manip^du copier/coller^^.
Si tu remarque dans le code suivant:
$pass = $_POST['pass'];
la variable $pass reprend le contenu du formulaire d'inscription (le champ du mot de pass) d'où le $_POST.
Ajouter un commentaire
Ce document intitulé « Crypter champs sql md5 » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?