Récupérer une valeur dans une base de données et la comparer au contenu d'un tex [Résolu]

cs_SecondSight 16 Messages postés lundi 27 décembre 2004Date d'inscription 11 février 2007 Dernière intervention - 2 janv. 2006 à 08:09 - Dernière réponse :  risbominkala
- 30 juil. 2012 à 18:17
Bonjour !

J'ai fait un petit programme simple (en m'inspirant de codes trouvés sur ce site) où l'utilisateur doit s'enregistrer (nom + mot de passe). Les informations sont stockées dans une base de données Programme.mdb (pas de contrôle data) ayant pour table Eleves et deux champs : Nom et MotPasse.

Pour s'identifier, l'utilisateur doit choisir son nom dans un contrôle combo. Quand il clique sur son nom dans la liste, d'autres textbox sont automatiquement complétés.
-------------------------------------
Private Sub Combo1_click()

'Connexion à la table Eleves
Set tmpRec = DBTest.OpenRecordset("Eleves", dbOpenDynaset)

'Compare le texte avec tout les éléments du champs Nom
Do While Not Combo1.Text = tmpRec!Nom
'Aller à l'enregistrement suivant
tmpRec.MoveNext
Loop

'Copie le champ Classe
txtClasse.Text = tmpRec!Classe

'Copie le champ Mot de passe dans un contrôle textbox caché
txtHidden.Text = tmpRec!MotPasse

'Deconnexion
tmpRec.Close

txtMotPasse.SetFocus
End Sub
-----------------------------------------

Puis l'utilisateur doit taper son mot de passe dans un textbox et cliquer sur un bouton.
Le programme doit alors comparer le mot de passe se trouvant dans le textbox caché et celui tapé dans le textbox visible. (J'ai pas trouvé mieux ...)
-----------------------------------------
Code du bouton :

If txtMotPasse <> txtHidden Then
MsgBox "Le mot de passe que vous avez tapé est faux !", vbOKOnly, "ERREUR !"
txtMotPasse.SetFocus
txtMotPasse = ""
End If
-----------------------------------------

Bref, comment aurait-il fallu que je fasse pour récupérer la valeur dans la base de données avec une requète MYSQL ?

Merci pour votre aide ! :)
Afficher la suite 

3 réponses

COlive 91 Messages postés mercredi 27 février 2002Date d'inscription 3 décembre 2011 Dernière intervention - 2 janv. 2006 à 13:26
0
Merci
Moi j'aurai tout simplement fais ceci :

'Connexion à la table Eleves
Set tmpRec = DBTest.OpenRecordset("SELECT * FROM Eleves WHERE Nom=' + Combo1.text + "'", dbOpenDynaset)

if tmpRec.recordcount = 0 then
msgbox "Utilisateur Inconnu"
exit sub
end if

if txtMotPasse.text <> tmprec.fields(Num du champ correspondant au mot de passe).value then
msgbox "Mot de passe incorrect"
exit sub
end if

msgbox "Mot de passe Bon !!"

Voila, ça serait un truc dans le genre, je pense.

COlive.
Deux intellectuels assis iront moins loin qu'un con qui marche. Pensez-y !

Pensez à cliquer sur réponse acceptées quand votre problème est solutionné.
cs_SecondSight 16 Messages postés lundi 27 décembre 2004Date d'inscription 11 février 2007 Dernière intervention - 2 janv. 2006 à 19:19
0
Merci
Merci ! Je vais tester de suite :)
risbominkala - 30 juil. 2012 à 18:17
0
Merci
KSK vous voulez dire par tmpRec?....moi je travaille en VB.net 2008 et je voudrais savoir si le code est le même?

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.