Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
810 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  recuperer son mot de pass ( requet sql )

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

recuperer son mot de pass ( requet sql )

n°1863231
max1395
Posté le 18-03-2009 à 16:21:23  profilanswer
 

bonjour,
je suis en train de realisé mon site et je voudrais créer une fonction qui permet de recupérer son mot de pass en cas d'oubli mais apres avoir coder cette fonction je me suis rendu compte que cela ne marché pas alors je voudrais vous demander si ce code marche . quand j'essays sa me mais le message d'erreur comme quoi mon email est introuvable :  

Code :
  1. <?php
  2. $email ='maxime4213@orange.fr';
  3. $reponse = mysql_query("SELECT count(*) as membre_mdp FROM forum_membres WHERE membre_email = '.$email.' " ) or die(mysql_error());
  4. $donnees = mysql_fetch_array($reponse);
  5. if($donnees['membre_email'] == 1)
  6. {
  7. $email =  $_POST["email_m"] ;;
  8. $destinataire='$email';
  9. $expediteur='$email';
  10. $entete= "From: ".$expediteur." <".$expediteur.">\n"."MIME-Version: 1.0";
  11. $titre="recuperation des information ";
  12. $message="voila vos information relative a vote compte :
  13. email : $reponse
  14. ..............";
  15. if(mail($destinataire,$titre,$message,$entete))
  16. {
  17. echo 'votre message a bien été envoyer a cette adresse  :
  18. $email';
  19. }
  20. else
  21. {
  22. echo 'il y a une erreur lors de expedition du message . veuiller réessayer <a href="oublie.php">ici</a>';
  23. }
  24. }
  25. else
  26. {
  27. echo 'votre adresse email existe pas ou vous avez mal saisit votre ardesse email . cliquer <a href="oublie.php">ici pour recommancer</a>';
  28. }
  29. ?>


merci  

mood
Publicité
Posté le 18-03-2009 à 16:21:23  profilanswer
 

n°1863248
FlorentG
Unité de Masse
Posté le 18-03-2009 à 16:42:45  profilanswer
 

Comment se fait-il qu'on puisse récupérer son mot de passe ? Ca veut dire qu'il est stocké en clair dans la base ? C'est pas bien ça ;)

n°1863251
kao98
...
Posté le 18-03-2009 à 16:47:29  profilanswer
 

Code :
  1. $reponse = mysql_query("SELECT count(*) as membre_mdp FROM forum_membres WHERE membre_email = '.$email.' " ) or die(mysql_error());


Ta chaîne sql est entre " (double quote). Ta variable $email entre simple quote (normal, c'est du sql). Pas besoin des "." de concaténation.
Soit tu met (...) = '$email'" ), soit tu met (...) = '".$email."'" )
 
Je plussoie FlorenG au passage :jap:


Message édité par kao98 le 18-03-2009 à 16:47:56

---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
n°1863253
max1395
Posté le 18-03-2009 à 16:51:46  profilanswer
 

j'ai pas compris c'est se que j'ai fais . voila la requet  :

Code :
  1. $reponse = mysql_query("SELECT count(*) as membre_mdp FROM forum_membres WHERE membre_email = '$email'" ) or die(mysql_error());

n°1863257
kao98
...
Posté le 18-03-2009 à 16:56:21  profilanswer
 

Code :
  1. if($donnees['membre_email'] == 1)
  2. {


Ca devrait aller mieux avec  

Code :
  1. if($donnees['membre_mdp'] == 1)
  2. {


 
Un conseil : relis complètement ton code.


---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
n°1863261
max1395
Posté le 18-03-2009 à 17:05:21  profilanswer
 

merci maintenant je reçois l'email mais j'ai un autre problème :
je ne vois pas d'en le mail le mot de pass pourquoi ?

n°1863372
jak0
Posté le 18-03-2009 à 23:37:54  profilanswer
 

$message="voila vos information relative a vote compte :
email : $reponse
..............";
 
$reponse, c'est pas une chaîne déjà et surtout, ben si tu mets pas $donnees['membre_mdp'] dans ton message, ben forcément... lol
Vaudrait-mieux que tu redonnes la dernière version de ton script ;)

n°1863373
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 18-03-2009 à 23:39:06  profilanswer
 

max1395 a écrit :

bonjour,
je suis en train de realisé mon site et je voudrais créer une fonction qui permet de recupérer son mot de pass en cas d'oubli mais apres avoir coder cette fonction je me suis rendu compte que cela ne marché pas alors je voudrais vous demander si ce code marche . quand j'essays sa me mais le message d'erreur comme quoi mon email est introuvable :  


ton site est une vraie passoire à injection SQL, et y'a plein de fautes d'orthographe [:sadnoir]
c'est pas très sérieux tout ça [:cerveau sadnoir]


---------------
J'ai un string dans l'array (Paris Hilton)
n°1863404
max1395
Posté le 19-03-2009 à 09:09:19  profilanswer
 

voila le code :

Code :
  1. <?php
  2. $email ='maxime4213@orange.fr';
  3. $reponse = mysql_query("SELECT count(*) as membre_mdp FROM forum_membres WHERE membre_email = '$email'" ) or die(mysql_error());
  4. $donnees = mysql_fetch_array($reponse);
  5. if($donnees['membre_mdp'] == 1)
  6. {
  7. $email =  $_POST["email_m"] ;;
  8. $destinataire='maxime4213@orange.fr';
  9. $expediteur='maxime4213@orange.fr';
  10. $entete= "From: ".$expediteur." <".$expediteur.">\n"."MIME-Version: 1.0";
  11. $titre="recuperation des information ";
  12. $message="voila vos information relative a vote compte :
  13. email : $reponse
  14. ..............";
  15. if(mail($destinataire,$titre,$message,$entete))
  16. {
  17. echo 'votre message a bien été envoyer a cette adresse  :
  18. $email';
  19. }
  20. else
  21. {
  22. echo 'il y a une erreur lors de expedition du message . veuiller réessayer <a href="oublie.php">ici</a>';
  23. }
  24. }
  25. else
  26. {
  27. echo 'votre adresse email existe pas ou vous avez mal saisit votre ardesse email . cliquer <a href="oublie.php">ici pour recommancer</a>';
  28. }
  29. ?>


n°1863406
kao98
...
Posté le 19-03-2009 à 09:19:38  profilanswer
 

Ok. Tu le fait exprès ? Ou pas !?


---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
mood
Publicité
Posté le 19-03-2009 à 09:19:38  profilanswer
 

n°1863408
max1395
Posté le 19-03-2009 à 09:22:06  profilanswer
 

quoi ?  on m'a demander le code !

n°1863410
kao98
...
Posté le 19-03-2009 à 09:25:14  profilanswer
 

Es-tu développeur ?
Es-tu développeur php ?
Es-tu l'auteur de ce code ?
 
(juste pour être sûr)


---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
n°1863411
rufo
Pas me confondre avec Lycos!
Posté le 19-03-2009 à 09:27:16  profilanswer
 

A quel moment, dans ton code, tu crois avoir récupéré le mot de passe de l'utilisateur dans ta BD? :/


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°1863415
max1395
Posté le 19-03-2009 à 09:31:52  profilanswer
 

non je ne suis pas développeur et oui c'est mon code , je l'ai créer tout seul  et je ne sais pas a quel moment je récupère le mot de pass

n°1863416
kao98
...
Posté le 19-03-2009 à 09:35:38  profilanswer
 

Justement : tu ne le récupère pas, et même si tu l'avais récupéré, tu ne le met pas de le mail.
 
Tu n'es pas développeur. Ok. Si tu veux le devenir, apprends, réfléchit, soit un peu plus logique.
 
Ton topic, c'est pas des erreurs ou oubli de débutant, c'est du manque de logique, de réflexion, de relecture du code, et surtout du manque de compréhension de ce que tu fais. Tu devrais être capable de comprendre en détail chacune des lignes de ton code. Surtout si tu en ais l'auteur. Si ce n'est pas le cas, cherche donc des cours et/ou des tutos sur la programmation !
 
La programmation, spa de la magie ! Si tu n'écris pas le code permettant de faire telle ou telle chose, il ne va pas les faire tout seul !


Message édité par kao98 le 19-03-2009 à 09:37:12

---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
n°1863418
max1395
Posté le 19-03-2009 à 09:37:47  profilanswer
 

je le mais pas dans le mail sa je savais et je savais aussi que je ne le recuperer pas et donc s'est pour cela que je suis venu demaner de l'aide ici pour pouvoir trouver la requet qui me le permet

n°1863419
FlorentG
Unité de Masse
Posté le 19-03-2009 à 09:50:23  profilanswer
 

Nan mais il ne faut surtout pas permettre de récuperer son mot de passe comme ça, ça veut dire qu'il est stocké en clair :/

n°1863421
max1395
Posté le 19-03-2009 à 09:52:31  profilanswer
 

donc il faudrait que je fasse md5 et donc que je lui envoie un nouveau mot de passe et apres sa serat a lui de le changer

n°1863424
nabbo
Posté le 19-03-2009 à 10:00:33  profilanswer
 

max1395 a écrit :

donc il faudrait que je fasse md5 et donc que je lui envoie un nouveau mot de passe et apres sa serat a lui de le changer


 
exactement.
 
Et par pitié, fais un effort sur l'orthographe

n°1863427
max1395
Posté le 19-03-2009 à 10:04:04  profilanswer
 

mais comment je fais ? je séléctionne  le mot de passe dans la bdd  et apres je le mets en md5

n°1863429
nabbo
Posté le 19-03-2009 à 10:11:24  profilanswer
 

si tu fais un hash du mot de passe, c'est pour éviter de le stocker en clair dans ta base. comme ca si quelqu'un a un accès interdit à ta base (on ne sait jamais), il n'aura pas les mots de passe en clair.
 
en clair :  
- ton utilisateur envoie le mot de passe en clair
- tu le recois, et tu le hash
- tu compares le hash obtenu avec celui qui est en base. si ca concorde, alors c'est le bon mot de passe
- sinon, c'est pas le bon mot de passe.
 
maintenant, avec cette méthode, tu ne peux pas renvoyer le mot de passe à ton utilisateur s'il l'a oublié, puisque tu n'as pas cette information... tu n'as que le hash.
Alors comme lui renvoyer le hash est assez inutile, et bien s'il perd son mot de passe, tu en créé un de façon aléatoire, tu le hash et tu lui envoie la version claire (que tu gardes le temps de lui envoyer)
 
Ensuite, tu peux le forcer à le changer à la première utilisation.
 
Il y a des milliers de tutos sur le net pour faire ça, dans tous les langages que tu veux.

n°1864508
nycius
Ich liebe dich !
Posté le 22-03-2009 à 16:51:56  profilanswer
 

FlorentG a écrit :

Nan mais il ne faut surtout pas permettre de récuperer son mot de passe comme ça, ça veut dire qu'il est stocké en clair :/


 
Tu peux aussi utiliser un systeme de cryptage/decryptage qui permet de ne pas stocker en BDD les mots de passe en clair mais de renvoyer le mot de passe au user.
Bcp moins secure que du md5 ou sha1 mais c'est mieux que le clair.

n°1864510
Profil sup​primé
Posté le 22-03-2009 à 16:55:39  answer
 

bof
en tout cas je me suis amusé à chercher les mots de passe contenus dans une liste et hashés en MD5, c'est fou mais j'en ai trouvés pas mal.
Donc pour moi ce ne sera plus md5 mais sha.

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  recuperer son mot de pass ( requet sql )

 

Sujets relatifs
[JDOM] recuperer tout le contenu d'un tag[VBA EXCEL] Récupérer son propre email Outlook dans une variable
Récupérer 2 valeurs et + avec deux tables(SQL Server)Help ... php+flickr : recuperer le secret code!
Récupérer l'alias du destinataire lors d'une réponse avec mailtorécuperer PageRank d'une Url ( batch)
[Résolu]Récupérer le groupe de travail en VBSComment récupérer toute ma table SQL?
Recuperer la valeur d'un BoundField dans un DetailsView (en VB.NET) ?Récupérer les données d'une Form d'un popup
Plus de sujets relatifs à : recuperer son mot de pass ( requet sql )


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR