Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: lutschi83 am März 25, 2015, 14:10:23

Titel: Passwort bei Anmeldung
Beitrag von: lutschi83 am März 25, 2015, 14:10:23
Hallo Leute,

ich habe die Nordwind Datenbank als Vorlage für eine "Vertriebsdatenbank" verwendet. Es funktioniert bisher alles total gut und ich komm super damit zurecht.
Lediglich würde ich jetzt gerne bei der Anmeldung eine Passwortabfrage mit einbauen.
Also der User wählt seinen Namen aus und dann kommt eine Passwortabfrage.
In der Tabelle "Personal" habe ich ein Feld "Kennwort" ich habe mir gedacht, dass ich darin das Kennwort hinterlege und falls der Benutzer das Kennwort falsch eingibt kommt eine Fehlermeldung....
Für kreativere Lösungen bin ich natürlich zu haben.
Ich hoffe Ihr könnt mir wie immer weiterhelfen.
Danke!!!
Titel: Re: Passwort bei Anmeldung
Beitrag von: DF6GL am März 25, 2015, 16:13:21
HAalo,

und welche "Hilfe" benötigst Du nun?


Im Prinzip ist Dein Lösungsansatz schon richtig.

Vielleicht wäre es besser, eine eigene Tabelle für die Einlog-Namen und Passwörter bereit zu stellen...

Titel: Re: Passwort bei Anmeldung
Beitrag von: lutschi83 am März 26, 2015, 07:24:04
Ich bräuchte Hilfe, wie ich das in VB abbilde.
Ich füge der Startmaske ein Textfeld "Passwort" hinzu, aber dann bin ich mit meinem Latein am Ende!
:-[
Titel: Re: Passwort bei Anmeldung
Beitrag von: DF6GL am März 26, 2015, 08:27:49
Hallo,



Grober Ablauf:

Im einem Formular (frmLogin) fügst Du ein ungebundenes Kombifeld (cmbUserName) und ein ungebundenes Textfeld (txtPW) ein.
Das Kombi zeigt eine Liste aller User aus der Tabelle tblUser.

tblUser:
UserID (PK, Autowert)
UserName (Text, eindeutiger Index)
UserPW (Text, mit "Kennwort" formatiert)
.
.
.

Beim Ereignis  "Nach Aktualisierung" des Textfeldes steht diese Prozedur (Luftcode):

Sub txtPW_Afterupdate()
If StrComp(Nz(Me!txtPW, "U n  G ü  L T i  G "), Nz(DLookup("UserPW", "tblUser", "Username = '" & Nz(Me!cmbUserName, "NoUser") & "'"), "NoPW"), 0) = 0 Then
   Docmd.Openform "frmÜbersichtform"
Else
  Application.Quit  'oder andere Reaktion, z. B. Aufforderung zur neuen PW-Eingabe
End If
End Sub


Das Formular frmLogin wird in den Access-Optionen als Startformular eingestellt.
Titel: Re: Passwort bei Anmeldung
Beitrag von: lutschi83 am März 26, 2015, 09:50:49
Private Sub cmdLogin_Click()
If StrComp(Nz(Me!txtpw, "Ungültig"), Nz(DLookup("UserPW", "tblUser", "Username = '" & Nz(Me!cmbUsername, "NoUser") & "'"), "NoPW"), 0) = 0 Then
   DoCmd.OpenForm "start"
Else
MsgBox ("FEHLER")
End If
End Sub

habe ich jetzt in VB eingefügt.
Bekomme aber nur die MsgBox angezeigt. Dass ganze passiert, wenn ich den Button "Login" drücke.
Was muss bei "ungültig" stehen?
Ich habe die Tabelle tblUser angelegt nach deinem Muster und das Formular logon ebenfalls angelegt.

Was muss ich noch machen?
Titel: Re: Passwort bei Anmeldung
Beitrag von: DF6GL am März 26, 2015, 10:23:52
Hallo,

ZitatWas muss bei "ungültig" stehen?

??  na, das was ich geschrieben habe, oder irgendetwas anderes "sinnloses" .. Der String ist doch nur ein Ersatzwert für den Fall, dass im Textfeld "xtPW" nicht drinsteht und der im "Normalfall" nicht vorkommt.

Nachdem eh der Code und das verwendete Ereignis geändert wurde, könntest Du die DB hier (komprimiert/repariert und gezippt) hochladen...
Titel: Re: Passwort bei Anmeldung
Beitrag von: lutschi83 am März 26, 2015, 14:16:37
Ich muss meine Datenbank nicht hochladen.
Es ist eigentlich die Nordwind-Beispieldatenbank....
Ich möchte gern das Login so verändern, dass ein Zusätzliches Textfeld darauf ist, dass durch Kennworteingabe der Startbildschirm erscheint.

Ich check einfach nicht, wie ich das in VB abbilden kann.
Titel: Re: Passwort bei Anmeldung
Beitrag von: DF6GL am März 26, 2015, 14:39:19
Hallo,

ZitatIch muss meine Datenbank nicht hochladen.
Nein, müssen musst Du nicht, ich muss Dir aber auch nicht weiterhelfen... ::)

Wie Du das Textfeld einbauen sollst und was sonst noch zu machen ist, hab ich vorher beschrieben.

Ansonsten musst Du halt den Code debuggen, bzw. prüfen, ob er richtig abläuft, d. h. die Tabelleneinträge (die User und deren Passwörter müssen vorher in die Tabelle eingetragen werden! Dazu ist es sinnvoll, ein zusätzliches Formular einzusetzen, das nur der Admin sieht und aufrufen kann.) stimmen und das Auslesen der Werte richtig funktioniert.