TUTO WEBDEV Mot de passe oublié

AUTEUR Code-Codage ~ 21/09/2022
Programmation WEBDEV Amateur

Dans ce nouveau Tutoriel découvrons ensemble comment, créer un système de mot de passe oublié + réinitialisation dans WEBDEVV + MYSQL, alors ce système va permettre ainsi à l'utilisateur de récupéré son compte perdu et de pouvoir a nouveau réinitialiser son compte…

Connexion BDD

PROCÉDURE Connexion()

DBServeur, DBUtilisateur, DBPawword, DBBase, DBMode sont des chaînes

DBServeur = "localhost"
DBUtilisateur = "root"
DBPawword = ""
DBBase = "tuto"
DBMode = "MYSQL"

SQLConnecte(DBServeur,DBUtilisateur,DBPawword,DBBase,DBMode)

Token

PROCÉDURE Token(TailleToken)

InitHasard()

CleAleatoire est une chaîne

BOUCLE(TailleToken)

NombreCaratcère est un entier = Hasard(65,122)

TANTQUE(91 <= NombreCaratcère <= 96)
NombreCaratcère = Hasard(65,122)
FIN

CleAleatoire += Caract(NombreCaratcère)

FIN

RENVOYER CleAleatoire

Inscription

PROCÉDURE InscriptionUser(nom, email, password)

nom = SansEspace(nom)

SI VérifieExpressionRégulière(email, "[-.a-z0-9]+[@][-.a-z0-9]+[.][a-z]{2,4}") = Vrai ALORS
email = email

SINON
Info("Entrer une adresse mail valide")
FIN

password = Crypte(password, "Crypt1")

cléUnique est une chaîne = Token(20)

dateInscription est une chaîne = DateVersChaîne(DateDuJour(),maskDateSystème)

ReqInscription est une chaîne = "INSERT INTO users SET NOM = '" + nom + "', EMAIL = '" + email + "', PASSWORD = '" + password + "', TOKEN = '" + cléUnique + "', DATE_I = '" + dateInscription + "'"

SI SQLExec(ReqInscription, "INSCIPTION") ALORS
Info("Votre compte " + nom + " a été créer")
FIN

Forgot

PROCÉDURE Mot_de_passe_oublier(EmailUser)

SI VérifieExpressionRégulière(EmailUser, "[-.a-z0-9]+[@][-.a-z0-9]+[.][a-z]{2,4}") = Vrai ALORS
EmailUser = EmailUser

ReqForgot est une chaîne = "SELECT * FROM users WHERE EMAIL = '" + EmailUser + "'"

SI SQLExec(ReqForgot, "FORGOT") = Vrai ALORS
SQLPremier("FORGOT")

TableauValeur est un tableau de chaînes = [SQLCol("FORGOT", 1), SQLCol("FORGOT", 2), SQLCol("FORGOT", 3), SQLCol("FORGOT", 5)]

PageUtilise(UpdateMdp,TableauValeur[1], TableauValeur[4])

FIN

SINON
Info("Entrer une adresse mail valide")
FIN

Update

PROCÉDURE UpdateMdp(mdp, confirmation, Id)

SI mdp = confirmation ALORS
mdp = Crypte(mdp, "Crypt1")
confirmation = Crypte(confirmation, "Crypt1")

// Mise à jour de la cléUnique
CleUnique est une chaîne = Token(21)

UpdateCompte est une chaîne = "UPDATE users SET PASSWORD = '" + mdp + "', TOKEN = '" + CleUnique + "' WHERE ID = '" + Id + "'"

SI SQLExec(UpdateCompte, "UPDATE") = Vrai ALORS

Info("Votre compte est mise à jour")

FIN
FIN

Page Inscription

PROCÉDURE MaPage()

//Connexion base de donnée
Connexion()

Bouton Inscription

InscriptionUser(NOM, EMAIL, PASSWORD)

Bouton Retrouver

Mot_de_passe_oublier(Email)

Formulaire Update

Connexion()

IdUSER est un entier = PageParamètre("P1")
TokenUser est une chaîne = PageParamètre("P2")


ReqCompteTrouver est une chaîne = "SELECT * FROM users WHERE ID = '" + IdUSER + "' AND TOKEN = '" + TokenUser + "'"

SI SQLExec(ReqCompteTrouver, "COMPTETROUVER") = Vrai ALORS
SQLPremier("COMPTETROUVER")

USER = SQLCol("COMPTETROUVER", 2)
FIN

Bouton Renitialiser

UpdateMdp(Mot_de_passe,Confirmation, IdUSER)

 



Réponses