Hacher un mot de passe avec md5

Résolu/Fermé
BuddyLove_x52 Messages postés 123 Date d'inscription dimanche 12 janvier 2014 Statut Membre Dernière intervention 16 mai 2017 - Modifié par BuddyLove_x52 le 17/11/2014 à 20:39
BuddyLove_x52 Messages postés 123 Date d'inscription dimanche 12 janvier 2014 Statut Membre Dernière intervention 16 mai 2017 - 17 nov. 2014 à 21:22
Salut tous le monde ! Je débute en php et je n'arrive pas a hacher mon mot de passe. Je suis entrain de créer un formulaire d'inscription, les données envoyer s'enrgistre bien dans ma base de données mais le mot de passe est pas crypté ! Quelqu'un pourrais m'aider svp ? Merci d'avance.


Voici le code :


<meta charset="utf-8">

<?php

if(isset($_POST['submit']))
{

$username = htmlspecialchars(trim($_POST['username']));
$password = htmlspecialchars(trim($_POST['password']));
$repeatpassword = htmlspecialchars(trim($_POST['repeatpassword']));

if($username&&$password&&$repeatpassword)
{
if(strlen($username)>=4)
{
if(strlen($password)>=6)
{

if($password==$repeatpassword)
{

$password = md5($_POST['password']);

try
{
$bdd = new PDO('mysql:host=localhost;dbname=blablabla', 'root', '');
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
$req = $bdd->prepare('INSERT INTO user (username, password) VALUES(?, ?)');
$req->execute(array($_POST['username'], $_POST['password']));


}else echo 'Les mots de passes sont pas indentiques';
}else echo "Mot de passe trop court";
}else echo "Le nom d\'utilisateurest trop court";
}else echo "Veuillez saisir tous les champs";

}
?>
<h1>Inscriptions</h1>
<form method ="post" action="register.php">
<p>votre nom d'utilisateur</p>
<input type="text" name="username">
<p>Votre mot de passe</p>
<input type="password" name="password">
<p>Répéter votre mot de passe</p>
<input type="password" name="repeatpassword"><br><br>
<input type="submit" name="submit" value="Valider">
</form>

2 réponses

GrifOli Messages postés 2111 Date d'inscription samedi 28 juin 2008 Statut Membre Dernière intervention 26 mars 2020 591
17 nov. 2014 à 20:42
Bonjour,

À la place de ceci:
$req->execute(array($_POST['username'], $_POST['password'])); 

Mets cela:
$req->execute(array($_POST['username'], $password)); 
0
BuddyLove_x52 Messages postés 123 Date d'inscription dimanche 12 janvier 2014 Statut Membre Dernière intervention 16 mai 2017
17 nov. 2014 à 20:44
Merci beaucoup sa marche !! Sa fais plus de 3heures que je me creuse la tête a chercher plusieurs technique pour que cela fonctionne ! Merci de ta réponse rapide et efficace... Tous sa pour un truc si simple, je suis dégoutter lol. J'ai commencer seulement y a deux semaines donc tous sa me parais asse compliqué lol
0
GrifOli Messages postés 2111 Date d'inscription samedi 28 juin 2008 Statut Membre Dernière intervention 26 mars 2020 591
17 nov. 2014 à 20:46
Pas de problème :) Faut juste comprendre que ton encryptage de mot de passe a été mis dans la variable $password, c'est donc cette variable que tu dois utiliser au moment d'insérer le mot de passe dans la bdd.
0
BuddyLove_x52 Messages postés 123 Date d'inscription dimanche 12 janvier 2014 Statut Membre Dernière intervention 16 mai 2017
17 nov. 2014 à 20:49
C'est ce que j'essayer de faire mais moi j'avais essayer comme ceci :

$req->execute(array($_POST['username'], $_POST['$password']));

Et puis bah évidemment sa fonctionner pas ^^. Puis aprés j'ai essayer pleins de manipulations qui tenais pas la route, mais bon, rien ne coûte d'essayer ^^
0
GrifOli Messages postés 2111 Date d'inscription samedi 28 juin 2008 Statut Membre Dernière intervention 26 mars 2020 591
17 nov. 2014 à 20:53
$_POST['$password']) est la donnée brute que l'utilisateur a entré comme mot de passe.

$password = md5($_POST['password']); c'est ici que tu cryptes la donnée brute et tu l'attribues à la variable $password.

Donc, si tu insères la variable $_POST['$password']) dans ta bdd, tu insères ce que l'utilisateur a entré, non pas le mot de passe crypté :)
0
BuddyLove_x52 Messages postés 123 Date d'inscription dimanche 12 janvier 2014 Statut Membre Dernière intervention 16 mai 2017
17 nov. 2014 à 21:08
Ah d'accord ! J'ai compris, maintenant ! Merci de ton aide et de ton explication :)
0
GrifOli Messages postés 2111 Date d'inscription samedi 28 juin 2008 Statut Membre Dernière intervention 26 mars 2020 591
17 nov. 2014 à 21:09
Ça me fais plaisir! Mets le sujet en résolu et bonne continuation :)
0