August 06, 2020, 21:59:12

Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!


(Access 2019) Laufzeitfehler 3075 bei Benutzereingabe

Begonnen von Jan.T, Juli 13, 2020, 11:27:41

⏪ vorheriges - nächstes ⏩

Jan.T

Juli 13, 2020, 11:27:41 Letzte Bearbeitung: Juli 13, 2020, 11:50:28 von Jan.T
Hallo Acces-O-Mania forum, ich habe folgendes Problem:
Ich kriege jedesmal bei eingabe von daten und klick auf den Login button die Fehlermeldung "Laufzeitfehler 3075"
Syntaxfehler (fehlender Operator) in Abfrageausdruck 'Benutzername =""JT"" AND Kennwort = ""1234""
Der Code ist folgender:
Private Sub cmdLogin_Click()
Dim lngBenutzerID As Long
lngBenutzerID = Nz(DLookup("BenutzerID", _
"Benutzer", "Benutzername = ''''" _
& Me!txtBenutzername _
& "'''' AND Kennwort = ''''" _
& Me!txtKennwort & "''''"), 0)
If lngBenutzerID = 0 Then
 MsgBox "Benutzername und/oder " _
    & "Kennwort sind falsch."
Else
 MsgBox "Anmeldung erfolgreich!"
    OptionEinstellen "CurrentUserID", _
    CStr(lngBenutzerID)
    DoCmd.Close acForm, Me.Name
End If
End Sub

Bei klick auf den Login button ohne eingabe, zeit er korrekt den Text an, das es falsch ist!

Ich habe das ganze von dieser Website kopiert, da ich keine Ahnung von Access habe und noch lerne: https://access-im-unternehmen.de/Benutzerverwaltung/

Habe den Code lediglich ein wenig angepasst.

Was kann ich tun?

Beaker s.a.

Hallo Jan,
Wozu sind die ganzen Quotes nötig?
Lass dir den Kriterien-String mal im Direktfenster anzeigen.
Dim sCriteria As String
sCriteria = "Benutzername = '" _
& Me!txtBenutzername _
& "' AND Kennwort = '" _
& Me!txtKennwort & "'"
Debug.Print sCriteria

gruss ekkehard

--
Beaker s.a., der lieber an seinem eigenen Projekt arbeiten würde/sollte, aber irgendwie immer gerne seinen Senf dazu gibt ;-)
S.M.I².L.E.

Hondo

Hallo,
OptionEinstellen ist eine Prozedur/Funktion? oder Makro?
im Direktfenster sieht das z.B. so aus:
Benutzername = ''''Tester'''' AND Kennwort = ''''123ABC''''Da sind eindeutig ein paar Anführungszeichen zu viel.

Wenn dein Login ein klein wenig was taugen sollte wäre es nicht schlecht Benutzername und Passwort in Variablen zu speichen und diese mittels regulärem Ausdruck zu untersuchen. Beispielsweise Leerzeichen im Benuternamen/Passwort verbieten etc.

Gruß Andreas