Formulaire de connexion avec mot de passe
Résolu
floriandu77700
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
floriandu77700 Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
floriandu77700 Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Etant novice en matière de VBA, j'ai récupéré sur Internet un code permettant à mes utilisateurs access de se connecter avec un mot de passe.
J'ai donc copier ce code et l'ai adapté à ma BDD, or je rencontre un problème lors de l'exécution de la procédure et je ne sais pas comment la résoudre.
Si quelqu'un a une solution, je suis preneur.
Voici le code et le message d'erreur, je vous remercie d'avance :
" ERREUR D'EXECUTION '3061' :
Trop peu de paramètres. 2 attendu."
Ligne "Set rs = CurrentDb.OpenRecordset(sql)" en surbrillance jaune
Etant novice en matière de VBA, j'ai récupéré sur Internet un code permettant à mes utilisateurs access de se connecter avec un mot de passe.
J'ai donc copier ce code et l'ai adapté à ma BDD, or je rencontre un problème lors de l'exécution de la procédure et je ne sais pas comment la résoudre.
Si quelqu'un a une solution, je suis preneur.
Voici le code et le message d'erreur, je vous remercie d'avance :
Private Sub Connexion_Click() Me.Requery Dim sql, User_id As String Dim rs As DAO.Recordset Static i As Byte sql = "SELECT * FROM T_Utilisateur WHERE ID_Utilisateur = Me.F_Loggin_ID AND Pass_Utilisateur = Me.F_Loggin_Pass" Set rs = CurrentDb.OpenRecordset(sql) If Not rs.EOF Then DoCmd.OpenForm "F_Formulaire de navigation", acNormal, , , , acWindowNormal DoCmd.Close acForm, "F_Loggin" User_id = rs("ID_Utilisateur").Value Else MsgBox "(Identifiant, Mot de Passe) incorrect ", vbInformation, "Connexion" i = i + 1 End If If i = 3 Then MsgBox "Vous avez dépassé le nombre de tentatives autorisées", vbCritical DoCmd.Quit End If End Sub
" ERREUR D'EXECUTION '3061' :
Trop peu de paramètres. 2 attendu."
Ligne "Set rs = CurrentDb.OpenRecordset(sql)" en surbrillance jaune
A voir également:
- Formulaire de connexion avec mot de passe
- Whatsapp formulaire opposition - Guide
- Trousseau mot de passe iphone - Guide
- Gmail connexion - Guide
- Mot de passe - Guide
- Mot de passe administrateur - Guide
1 réponse
Bonjour,
integrez vos variables dans votre requete:
integrez vos variables dans votre requete:
Private Sub Connexion_Click() Dim sql, User_id As String Dim rs As DAO.Recordset Static i As Byte Me.Requery sql = "SELECT * FROM T_Utilisateur WHERE ID_Utilisateur =" & Me.F_Loggin_ID & " AND " & Pass_Utilisateur & "=" & Me.F_Loggin_Pass Set rs = CurrentDb.OpenRecordset(sql) If Not rs.EOF Then DoCmd.OpenForm "F_Formulaire de navigation", acNormal, , , , acWindowNormal DoCmd.Close acForm, "F_Loggin" User_id = rs("ID_Utilisateur").Value Else MsgBox "(Identifiant, Mot de Passe) incorrect ", vbInformation, "Connexion" i = i + 1 End If If i = 3 Then MsgBox "Vous avez dépassé le nombre de tentatives autorisées", vbCritical DoCmd.Quit End If End Sub
J'ai tenté de modifier la requête mais j'ai toujours une erreur :
Erreur de syntaxe (opérateur absent) dans l'expression
"ID_Utilisateur =JD AND =test"
JD étant l'identifiant et test le mot de passe..
Je dois vous avouer que je ne comprend pas encore ces problèmes de syntaxe dans les requêtes.
ton pass_utilisateur doit être dans la requête et il est vraisemblable que le password soit une chaine, elle doive être 'enquotée'...
Merci pour votre aide f894009 et blux , la requête fonctionne, j'ai juste modifier un léger détail :
sql = "SELECT * FROM T_Utilisateur WHERE ID_Utilisateur =" & Me.F_Loggin_ID & "' AND Pass_Utilisateur = '" & Me.F_Loggin_Pass & "'"
' après la chaîne : Me.F_Loggin_ID & "