none
Access Benutzerverwaltung fehlerhaft

    Frage

  • Guten Abend zusammen,

    probiere schon seit Stunden das umzusetzen aber irgendwie klappt es nicht so wie ich will. Habe ungebundene Felder Benutzername Passwort welches über ein Formular läuft, welches in einem Marko autoexec geladen wird. Der Vergleich schlägt auch bei korrekter Eingabe fehl warum? Hier mal mein Code.

    Private Sub abbrechen_Click()
    If MsgBox("Wollen Sie die Anwendung wirklich beenden?", vbYesNo + vbExclamation, "Anwendung beenden") = vbYes Then DoCmd.Quit
     
    End Sub
     
     
     
    Private Sub Login_Click()
     
    Dim abgleich
     
    abgleich = "SELECT tbl_accounts.benutzer, tbl_accounts.passwort FROM tbl_accounts"
     
     
     
    If abgleich = Me.benutzer Then
    DoCmd.OpenForm ("frm_Hauptmenu")
     
    End If
     
    If abgleich = Me.Passwort Then
    DoCmd.OpenForm ("frm_Hauptmenu")
     
    Else
     
    MsgBox ("Falscher Benutzername oder falsches Passwort")
     
    End If
    End Sub

    Donnerstag, 6. März 2014 19:49

Antworten

Alle Antworten

  • Hallo Christian,

    Du willst den String "SELECT tbl_accounts.benutzer, tbl_accounts.passwort FROM tbl_accounts" mit dem eingegebenen Benutzernamen und dem eingegebenen Passwort vergleichen? Was soll das bringen?

    Der Vergleich kann niemals True zurückliefern, da Du letztend sowas vergleichst:

    IF "SELECT ... FROM ..." = "HansWurst" Then
        ...
    End if
    

    Dass das nicht klappen kann, sollte dir einleuchten.

    Schau mal hier, da solltest Du erkennen können, wie Du an die Inhalte rankommst. Diese musst Du dann vergleichen.

      http://dbwiki.net/wiki/Access_Anfänger:_Wie_greife_ich_in_VBA_auf_die_Werte_einer_Tabelle_zu?


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    Donnerstag, 6. März 2014 20:14
  • Am 06.03.2014 schrieb Christian Huml:

    Dim abgleich

    Hier fehlt eine ordentliche Deklaration.

    Dim strAbgleich as String

    Zusätzlich solltest in allen Modulköpfen diese Zeile hinzufügen:

    Option Explicit

    Was genau möchtest Du erreichen? Den aktuellen Benutzer auslesen?


    Servus
    Winfried

    Gruppenrichtlinien
    WSUS Package Publisher
    HowTos zum WSUS Package Publisher
    NNTP-Bridge für MS-Foren

    Freitag, 7. März 2014 05:56
  • Guten Morgen,

    genau ich würde gerne die hinterlegten Benutzer in der Tabelle auslesen und mit dem Formular welches beim öffnen der Datei überprüft ob Benutzer und Passwort übereinstimmen. Bei korrekter Eingabe soll dann

    DoCmd.OpenForm ("frm_Hauptmenu")

    erfolgen. Beim Formular sind beide Felder ungebunden dies nur zur Anmerkung

    Mit freundlichen Grüßen

    Christian Huml

    Freitag, 7. März 2014 07:56
  • Hallo Christian,

    dann schau doch bitte mal in mein Posting. Da findest Du u.a. einen Link, der erklärt, wie Du individuell Daten auslesen kannst. Das solltest Du dann in deine Funktion einbauen und die ermittelten Werte dann mit der Benutzereingabe vergleichen.


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    Freitag, 7. März 2014 10:39