Redéfinir son mot de passe grâce à une adresse mail

Résolu/Fermé
gui19941992 Messages postés 42 Date d'inscription jeudi 26 mai 2011 Statut Membre Dernière intervention 26 mai 2013 - 23 mai 2013 à 14:13
Anoen Messages postés 196 Date d'inscription mardi 10 novembre 2009 Statut Membre Dernière intervention 11 septembre 2013 - 23 mai 2013 à 14:41
Bonjour,
J'ai un projet à rendre pour mon école, je voudrais faire un mot de passe oublié , j'ai donc créer un formulaire avec un champs adresse mail et quand on envoie l'adresse mail grâce au formulaire et bah que la personne puis redéfinir son mot de passe. Je n'ai aucune idée de comment faire exactement merci de proposer des solutions.
Cordialement
A voir également:

2 réponses

Salut salut,

Personnellement je génèrerais un mot de passe aléatoire qui serait envoyé par mail, et ferais une autre partie changer mot de passe s'il veut le changer.

Résolu? ===> [RESOLU]
0
Anoen Messages postés 196 Date d'inscription mardi 10 novembre 2009 Statut Membre Dernière intervention 11 septembre 2013 25
23 mai 2013 à 14:41
Alors, le principe général c'est de donner un lien unique de changement de mot de passe. Du type http://monsite.com/forgotpwd.php?token=hAGDhhdhzud254sa

La clé de ton formulaire ça va être le paramètre "token" (tu l'appelles comme tu veux). C'est ce qui va rendre ton formulaire de redéfinition de mot de passe unique à l'utilisateur.

Il te faudra une table, où stocker les tokens générés accompagnés de l'id ou nom de l'utilisateur (minimum).

Le schéma sera le suivant :

L'utilisateur remplit le formulaire de réinitialisation de mot de passe et l'envoie :
- Tu génère un token du style md5('adresse_mail');
- Tu stocke ce token ainsi que l'utilisateur l'ayant demandé en base.
- Tu donne le lien correspondant dans l'email.

Ensuite admettons que l'utilisateur clique sur le lien,

Déjà tu verifies que le token est bien en base. Si c'est le cas, tu le laisse remplir son nouveau mot de passe, tu enregistres toussa puis important : tu supprimes le token de la base une fois que c'est fait.
-1