|
|
|
|
Salut,
Ben sur ton formulaire tu fais un bouton "login" et avec du code VBA derrière tu cherches le login dans la base, tu encodes le mot de passe, et tu vérifies que c'est la valeur attendue... Goutez l'amer ... Buvez le vinaigre |
bhé le bouton est crée, c'est justement le code a placé derriere que je ne connais pas...........j'aurai du précisé que je suis débutant dans access Et dans la programmation!!! pleazzzz heeeelp!!!! |
Salut,
supposons que tu aies deux zones de texte : Z_User, Z_Pass qui sont là pour récupérer la saisie des infos, et que tu as une table User qui contient les user et mots de passe associés, ça pourrait ressembler à ça (code à mettre sur un bouton qui s'appelerait 'valider, propriété 'sur clic'') : Dim Rs As Recordset
Dim Reconnu as Boolean
Reconnu = False
Set Rs = CurrentDb.OpenRecordset("User")
Do While Not Rs.EOF
If Rs.Fields("User").Value = Z_User.value Then
If Rs.Fields("Pass").Value = Z_Pass.Value
MsgBox "Ok"
Reconnu = True
Exit Do
Else
Msgbox "Erreur de mot de passe"
GoTo Fin
End If
End If
Rs.MoveNext
Loop
If Reconnu = False Then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention.."
GoTo Fin
End If
'Traitement suivants
Fin:
A+ Blux "Les cons, ça ose tout. C'est même à ça qu'on les reconnait" |
A mon avis la avec ca je m'en rapproche.......seulement, il y a apparement une erreur lors de la compilation:
Erreur d'execution '13' Incompatibilité de type Je pense pourtant avoir bien retransposé le nom de la table et du formulaire; mes 2 zones de textes s'appelent: "Z_User" "Z_Pass" Ma table se nomme : "Table Utilisateur" et comporte les champ "Username" et "Password" Mon formulaire s'appelent quand a lui : "Formulaire Logon" Private Sub Connecter_Click() Dim Rs As Recordset Dim Reconnu As Boolean Reconnu = False Set Rs = CurrentDb.OpenRecordset("Table Utilisateur") Do While Not Rs.EOF If Rs.Fields("Username").Value = Z_User.Value Then If Rs.Fields("Password").Value = Z_Pass.Value Then MsgBox "Ok" Reconnu = True Exit Do Else MsgBox "Erreur de mot de passe" GoTo Fin End If End If Rs.MoveNext Loop If Reconnu = False Then MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention.." GoTo Fin End If 'Traitement suivants Fin: End Sub Ou est le probleme??? Encore merci pour ta réponse
|
Nikel!!!!! ca marche! enfin, ca fonctionne!!..........fallait gardé le recordset pour rs met le metre en variant..........ca a l'air encore plus bizar mais pas grave du moment que ca tourne..............Ca sert a quoi D.A.O ???.................Encore gros merci pour tous!!!!
Je dois y allé sinan je vais raté mon train thx a lot ++ Xtofer |
En faite ton premier code était tres bon il manquait juste DAO devant le recordset de cette instruction :
Dim Rs As DAO.Recordset sinan ca marche tres bien..............merci a toi blux Xtofer
|
Bonjour
j'ai utlisé votre code pour créer un formulaire logon. Mais il m'indique qu'il manque un Do à la loop. J'ai pourtant repris votre code exacte : Private Sub Entrerr_Click() Dim Rs As DAO.Recordset Dim Reconnu As Boolean Reconnu = False Set Rs = CurrentDb.OpenRecordset("PRO SMAEC") Do While Not Rs.EOF If Rs.Fields("NOM UTILISATEUR").Value = Modifiable4.Value Then If Rs.Fields("CODE ACCES").Value = CODE_ACCES.Value Then MsgBox "Ok" Reconnu = True Exit Do Else MsgBox "Erreur de mot de passe" GoTo Fin End If Rs.MoveNext Loop If Reconnu = False Then MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..." GoTo Fin End If Dim stDocName As String Dim stLinkCriteria As String stDocName = "Menu Général " DoCmd.OpenForm stDocName, , , stLinkCriteria Exit_Entrerr_Click: Exit Sub Err_Entrerr_Click: MsgBox Err.Description Resume Exit_Entrerr_Click Fin: End Sub Où est mon erreur ? Merci de votre aide |
Résultats pour [Access] formulaire login!!
Résultats pour [Access] formulaire login!!
Résultats pour [Access] formulaire login!!
Résultats pour [Access] formulaire login!!