L'authentification est une procédure, par laquelle un système informatique certifie l'identité d'une personne ou d'un ordinateur. Le but de cette procédure étant d'autoriser la personne à accéder à certaines ressources sécurisées. Découvrez dans ce tutoriel comment réaliser ce système de connexion
Code Source Login
Login est une Classe
hérite CnxDatabase
PUBLIC
m_sUserLogin est une chaîne
m_sPassLogin est une chaîne
m_sRequeteSQL est une chaîne
GLOBAL
//Déclaration des variables à utiliser de l'extérieur
mg_sIdUser, mg_sNom, mg_sEmail, mg_sPhone sont des chaîne
FIN
PROCÉDURE Constructeur(LoginUtilisateur, PassUtilisateur)
SI LoginUtilisateur = "" ET PassUtilisateur = "" ALORS
Info("Le champs sont vide")
FIN
m_sUserLogin = LoginUtilisateur
m_sPassLogin = Crypte(PassUtilisateur, "MotDePasse")
PROCÉDURE Connexion()
m_sRequeteSQL = "SELECT * FROM utilisateurs WHERE email = '" + m_sUserLogin + "' AND pass = '" + m_sPassLogin + "'"
SI mySQLExec(m_sRequeteSQL,1) = Vrai ALORS
//Compter les nombre des lignes et trouvé les informations correspondants
mySQLGetNumRows(1)
//Aller chercher les informations
SI mySQLFetch(1) ALORS
//Stocker les informations dans les variables Globales
mg_sIdUser = mySQLLitCol(1,1)
mg_sNom = mySQLLitCol(1,2)
mg_sEmail = mySQLLitCol(1,3)
mg_sPhone = mySQLLitCol(1,5)
OuvreFenêtreMobile(FEN_Profile)
SINON
Info("L'utilisateur n'existe pas !")
FIN
FIN
Bouton Connexion
clUserConnect est un Login(SAI_Adresse_mail,SAI_Mot_de_passe)
clUserConnect.Connexion()
Classe Profile
PROCÉDURE UpdateProfile()
m_sRequeteSQL = "UPDATE utilisateurs SET nom = '" + m_sNom + "', email = '" + m_sEmail + "', pass = '" + m_sMdp + "', phone = '" + m_sPhone + "' WHERE id = '" + m_nIdUser + "'"
SI OuiNon("Appliquer la modification ?") = Oui ALORS
mySQLExec(m_sRequeteSQL,1)
Info("Votre profile à été mise à jour")
FIN
PROCÉDURE MonProfileAffiche()
m_sRequetSQL = "SELECT * FROM utilisateurs WHERE id = '" + Login.mg_sIdUser + "'"
mySQLExec(m_sRequetSQL,1)
mySQLGetNumRows(1)
SI mySQLFetch(1) ALORS
m_nIdProfile = mySQLLitCol(1,1)
m_sProfileNom = mySQLLitCol(1,2)
m_sMailProfile = mySQLLitCol(1,3)
m_sMdpProfile = mySQLLitCol(1,4)
m_sPhoneProfile = mySQLLitCol(1,5)
SINON
Info("Votre profile ne pas trouvé")
FIN
Suppr
Classe Modifier Profile
ModifierProfile est une Classe
hérite CnxDatabase
PUBLIC
m_sNom, m_sEmail, m_sMdp, m_sPhone sont des chaînes
m_nIdUser est un entier
m_sRequeteSQL est une chaîne
FIN
PROCÉDURE Constructeur(UpdateNom, UpdateEmail, UpdateMdp, UpdatePhone, IdUser)
SI UpdateNom = "" ET UpdateEmail = "" ET UpdateMdp = "" ET UpdatePhone = "" ALORS
// Renvoie un message
Info("Vos champs sont vide")
FIN
/////////////////////////////////////////////
//Initialisation ds paramètres du constructeur
////////////////////////////////////////////
//Suppression des caractères non autorisé dans le nom
m_sNom = SansCaractère(UpdateNom, "?!*$¤£^<>")
//Vérification si l'adresse mail est valide (Méthode Expression Régulière)
SI VérifieExpressionRégulière(UpdateEmail, "[-.a-z0-9]+[@][-.a-z0-9]+[.][a-z]{2,4}") = Vrai ALORS
m_sEmail = UpdateEmail
SINON
Info("Adresse mail invalide")
FIN
//Hasher le mot de passe ()
m_sMdp = Crypte(UpdateMdp, "MotDePasse")
//Si le numéro est numérique
SI PAS EstNumérique(UpdatePhone) ALORS
Info("Le numéro n'est pas numérique")
SINON
m_sPhone = UpdatePhone
FIN
m_nIdUser = IdUser
PROCÉDURE UpdateProfile()
m_sRequeteSQL = "UPDATE utilisateurs SET nom = '" + m_sNom + "', email = '" + m_sEmail + "', pass = '" + m_sMdp + "', phone = '" + m_sPhone + "' WHERE id = '" + m_nIdUser + "'"
SI OuiNon("Appliquer la modification ?") = Oui ALORS
mySQLExec(m_sRequeteSQL,1)
Info("Votre profile à été mise à jour")
FIN
Bouton Modifier
clUpdateUser est un ModifierProfile(SAI_Nom,SAI_Email,SAI_Mot_de_passe,SAI_Phone,SAI_Id_Utilisateur)
clUpdateUser.UpdateProfile()
Fenêtre Profile
PROCÉDURE MaFenêtre()
gclConnexionDB est une CnxDatabase
gclMonProfile est un Profile
gclMonProfile.MonProfileAffiche()
LIB_Utilisateur = gclMonProfile.m_sProfileNom
SAI_Id_Utilisateur = gclMonProfile.m_nIdProfile
SAI_Nom = gclMonProfile.m_sProfileNom
SAI_Email = gclMonProfile.m_sMailProfile
SAI_Mot_de_passe = gclMonProfile.m_sMdpProfile
SAI_Phone = gclMonProfile.m_sPhoneProfile
Classe Supprimer Compte
SupprimerCompte est une Classe
hérite CnxDatabase
PUBLIC
m_sRequeDelete est une chaîne
FIN
PROCÉDURE SupprimerCompte()
m_sRequeDelete = "DELETE FROM utilisateurs WHERE id = '" + Login.mg_sIdUser + "'"
SI OuiNon("Supprimer votre compte ?") = Oui ALORS
mySQLExec(m_sRequeDelete,1)
Info("Votre compte a bien été supprimer et vous serez redirigé ver la la connexion")
Ferme(FEN_Profile)
OuvreFenêtreMobile(FEN_Login)
FIN
Bouton Supprimer
clUseeSupprimeCompte est un SupprimerCompte
clUseeSupprimeCompte.SupprimerCompte()
Exécuter a présent l'application et tester