Entwickler-Ecke

Datenbanken - MySQL und eigene Loginmaske


Snikch - Mi 25.10.06 09:44
Titel: MySQL und eigene Loginmaske
Ich habe eine kleine Datenbank unter MySQL laufen, der Cleint zur Datenbank / die Maske habe ich unter Dlphi programmiert.
Die Verbidnung zur DB funktioniert über ADOConnetion und dem neusten ODBC Treiber von der MySQL Seite.
Nun möchte ich anstatt des Delphi Login Prompt eine eigene Login Maske erstellen, die den Benutzername und das Passwort mit den Benutzern unter MySQL vergleicht und entsprechend eine passende Meldung herauswirft (Anmeldung OK oder Nicht OK).
Anschließend sollen Benutzername und das Aktuelle Datum in eine Variablen gespeichert werden.
Je nach Rechte unter MySQL (eigentlich geht es nur um das Recht 'Löschen') soll der Button Löschen sichtbar oder nicht sichtbar werden.

Soweit was ich möchte und jetzt kommt was ich als Ansatz bisher habe ;)

Dummerweise: Nichts!

Ich weiss nicht genau wie ich anfangen soll, wenn der Benutzername und das Passwort in einer seperaten Tabelle wärem, wäre das Problem nciht so groß, aber ich möchte ja die Benutzer aus der MySQL DB lesen und übernehmen.

Warum? Ganz einfach... meine MySQL DB ist so eingestellt, das beim Erstellen eines LinuxUsers gleichzeitig ein entsprechender MySQL User angelegt wird.

Gruß
Snikch


Snikch - Mi 21.02.07 17:49

Hat sich erledigt!


Klabautermann - Mi 21.02.07 18:40

Hi,

auch hier währe es schön, wenn du deine Lösung für nachfolgende gernerationen einmal kurz beschreibst.

Gruß
Klabautermann


Snikch - Do 22.02.07 12:52

Ich benutze ZeosLib und folgenden Code für die Useranmeldung:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
  Application.OnException:=OnError;
  Try
   Verbindung.User:=frm_benutzeranmeldung.Edit1.Text;
   Verbindung.Password:=frm_benutzeranmeldung.Edit2.Text;
   Verbindung.LoginPrompt:=False;
   Verbindung.Connected:=True;
  except
   on EZSQLException do begin
     MessageBox(0'Der Benutzername oder das Passwort war falsch.'+#13+#10+'Bitte wenden Sie sich an den Administrator.''Anmeldefehler', MB_ICONSTOP or MB_OK);
     Application.Terminate;
    end;


Gruß
Snikch