Dans ta base utilisateur tu rajoute un champs "token" et un champs "date_token" qui sont par défaut vide.
Au moment ou tu créer le mail à envoyer tu peuple ces 2 champs avec un numéro/chaine aléatoire pour le token et la date de création pour date_token.
Le lien que tu inclus dans le mail sera du type
$link = 'http://monsite.com/restorepassword.php?token='.$token;
De cette manière tu vérifie que l'utilisateur qui veux changer son mot de passe (donc qui te fourni son login et/ou email) est bien celui qui à recu l'émail.
La date de token permet de s'assurer que l'opération n'est pas effectue trop longtemps après la demande.
Une fois le nouveau mot de passe générer tu vide les deux champs dans ta base.
Partager