Guten Morgen,
ich such ein simples Beispiel über ein Login mit Datenbankanbindung.
Sprich Eingabe erfolgt über eine GUI und diese soll auf Ihre Korrektheit
überprüft werden. Wenn korrekt soll weitergeleitet werden wenn falsch dann
Fehlermeldung.
Vielleicht hat da einer ein kleines Beispiel von euch?
Gruß
Kalli
Login mit Datenbank und GUI
@Sirius3
Bis jetzt hab ich nur tkinter verwendet wenn es eine einfachere Variante gibt dann versuch ich diese mal aus.
Wie meinst du das es nichts mit Datenbank zu tun?
Wenn ich in einem Eingabefeld die Login-Daten eingebe und diese mit den
Datensätzen in der Datenbank verglichen werden sollen ob diese richtig sind, hat es doch etwas mit
Datenbank zu tun, oder sehe ich das falsch?
Ich such halt ein Beispiel was so aufgebaut ist, simpel reicht vollkommen aus.
Gruß
Kalli
Bis jetzt hab ich nur tkinter verwendet wenn es eine einfachere Variante gibt dann versuch ich diese mal aus.
Wie meinst du das es nichts mit Datenbank zu tun?
Wenn ich in einem Eingabefeld die Login-Daten eingebe und diese mit den
Datensätzen in der Datenbank verglichen werden sollen ob diese richtig sind, hat es doch etwas mit
Datenbank zu tun, oder sehe ich das falsch?
Ich such halt ein Beispiel was so aufgebaut ist, simpel reicht vollkommen aus.
Gruß
Kalli
Das komplette Programm ja, aber man wird natürlich GUI und Anwendungslogik trennen.Kalli87 hat geschrieben:Wenn ich in einem Eingabefeld die Login-Daten eingebe und diese mit den
Datensätzen in der Datenbank verglichen werden sollen ob diese richtig sind, hat es doch etwas mit
Datenbank zu tun, oder sehe ich das falsch?
In diesem Fall würdest du also erst deine GUI aufbauen und für die Überprüfung des Logins so lange eine Dummy-Funktion bereitstellen. Genauso könntest du auch anders herum erst den Datenbankzugriff implementieren und die getestete und lauffähige Version dann in die anschließend erstellte GUI einbinden.
Mit welchem dieser beiden getrennt zu betrachtenden Teile hast du denn jetzt das konkrete Problem?
Ah ok, dann ist es klar das es nicht wirklich was mit der Programmierung
einer Datenbank zu tun hat.
Ich hab mit der GUI angefangen, zwei simple Eingabefelder erstellt
und ein Button der "Login" heißt.
Nun soll bei dem betätigen des Buttons eine Funktion ausgelöst werden
die die Eingabe mit den Datensätzen aus der Datenbank vergleicht.
Mein Problem besteht jetzt darin das ganze irgendwie zu vergleichen.
Die Abfrage der Tabelle ist ja kein Problem.
Mal ein Gedankenansatz von mir:
Über ".get" komme ich ja an das was in den Eingabefeldern steht ran,
und bei der Datenbankabfrage kann ich die Datensätze der einzelnen spalten per "append"
doch in Variablen/listen speichern.
Korrigiert mich wenn ich falsch liegen sollte bitte.
Was ist jetzt aber wenn ich mehrere Datensätze gespeichert habe kann ich diese dann trotzdem so simpel vergleichen?
Bis jetzt hab ich nur einen Benutzer mit Passwort eingetragen zu Testzwecken, da dürfte an sich ja kein Problem entstehen.
einer Datenbank zu tun hat.
Ich hab mit der GUI angefangen, zwei simple Eingabefelder erstellt
und ein Button der "Login" heißt.
Nun soll bei dem betätigen des Buttons eine Funktion ausgelöst werden
die die Eingabe mit den Datensätzen aus der Datenbank vergleicht.
Mein Problem besteht jetzt darin das ganze irgendwie zu vergleichen.
Die Abfrage der Tabelle ist ja kein Problem.
Mal ein Gedankenansatz von mir:
Über ".get" komme ich ja an das was in den Eingabefeldern steht ran,
und bei der Datenbankabfrage kann ich die Datensätze der einzelnen spalten per "append"
doch in Variablen/listen speichern.
Korrigiert mich wenn ich falsch liegen sollte bitte.
Was ist jetzt aber wenn ich mehrere Datensätze gespeichert habe kann ich diese dann trotzdem so simpel vergleichen?
Bis jetzt hab ich nur einen Benutzer mit Passwort eingetragen zu Testzwecken, da dürfte an sich ja kein Problem entstehen.
Quatsch nein, ich glaub du hast mich falsch verstanden
Mal ein Beispiel
Simple Anbindung an die Datenbank + Abfrage der Mitarbeiter
Eingabefeld:
So sage ich jetzt das mir die Datensätze in die Variable/Liste gespeichert werden soll:
Heißt jetzt das aus der 1. Spalte der Tabelle mir die Namen der Mitarbeiter in benutzer[ ] gespeichert werden.
Jetzt möchte ich das gleiche mit dem Eingabefeld haben, sprich mit .get an eine Variable binden.
Das ganze miteinander vergleichen, meine Überlegung sah so aus:
Jetzt ist meine Frage ob das überhaupt so leicht funktioniert was ich mir so gedacht habe
und die nächste Frage wäre was ist wenn in der Datenbank mehr als nur ein Datensatz vorhanden
sind. Kann man es dann trotzdem so simple schreiben / vergleichen wie ich es mir denke?

Mal ein Beispiel
Simple Anbindung an die Datenbank + Abfrage der Mitarbeiter
Code: Alles auswählen
connection = psycopg2.connect("dbname=sqltest")
cursor = connection.cursor()
sql = "SELECT * FROM mitarbeiter"
cursor.execute(sql)
Code: Alles auswählen
# Beschriftung
Label(root, text="Benutzername", font="Helvetica 13 bold").grid(row=1, column=0)
#Eingabefeld
benutzername = Entry(root, font=10)
benutzername.grid(row=0, column=0)
So sage ich jetzt das mir die Datensätze in die Variable/Liste gespeichert werden soll:
Code: Alles auswählen
benutzer=[]
for dsatz in (cursor):
nickname = dsatz[0]
benutzer.append(nickname)
Jetzt möchte ich das gleiche mit dem Eingabefeld haben, sprich mit .get an eine Variable binden.
Code: Alles auswählen
user = benutzername.get()
Code: Alles auswählen
def login():
if anmelde == benutzer:
print('Hat geklappt!')
und die nächste Frage wäre was ist wenn in der Datenbank mehr als nur ein Datensatz vorhanden
sind. Kann man es dann trotzdem so simple schreiben / vergleichen wie ich es mir denke?
Ja klar jetzt, stand aufm schlauch 
Ich weiß jetzt was du meinst dazu muss ich nur eine Abfrage erstellen die nach der Eingabe sucht ob der Datensatz vorhanden ist.
Fehler gefunden, erkannt wird behoben
Da hat sich das ganze an sich erledigt.
Manchmal seh ich den Wald vor lauter Bäumen nicht, wie man so schön sagt
Ich bitte um Entschuldigung!
Trotzdem danke das Ihr mir auf die Sprünge geholfen habt.
Schönes Wochenende

Ich weiß jetzt was du meinst dazu muss ich nur eine Abfrage erstellen die nach der Eingabe sucht ob der Datensatz vorhanden ist.
Fehler gefunden, erkannt wird behoben

Da hat sich das ganze an sich erledigt.
Manchmal seh ich den Wald vor lauter Bäumen nicht, wie man so schön sagt

Ich bitte um Entschuldigung!
Trotzdem danke das Ihr mir auf die Sprünge geholfen habt.
Schönes Wochenende
