MySQL Login Form Tutorial by Retroid
Einführung
Hallo und Willkommen zu meinem ersten richtigen Tutorial im Bereich C#. Ich hoffe, dass ich euch mit dem Tutorial euch ein wenig helfen kann, bzw ihr das Tutorial auch versteht, und diese Methode auch in euren privaten Projekten verwenden könnt. Ich werde nun versuchen regelmäßig Tutorial's in Sachen C# zu schreiben, da ich mir auf meiner persönlichen Homepage eine kleine Coding Community aufbauen möchte. Die Tutorial's und Sourceprojekte werdet ihr natürlich auf meiner Seite finden und könnt diese kostenlos downloaden. Doch möchte ich mich vorher bei Holger W. bedanken der mir das ermöglicht während meiner Arbeitszeit dieses Tutorial zu schreiben. Viele wie auch dieses Tutorial werden spontan und ohne Vorbereitung geschrieben.
Vorbereitung
[TABLE="width: 800"]
[TR]
[TD][/TD]
[TD]Zuerst startet ihr Visual C# und erstellt eine neue Windows Forms Anwendung. Den Namen könnt ihr euch aussuchen. Ich für meinen fall nehme den Namen "MySQL Login".
Anschließend fügt ihr eurer Windows Forms Anwendung,
1 Button und 2 Textboxen hinzu.
Nun geht ihr in die Codeansicht eurer Form 1. Noch ist wenig Code vorhanden, doch das ändert sich jetzt gleich sehr schnell und wird eventuell etwas unübersichtlich. Deswegen gewöhnt euch immer an, sauber zu Arbeiten, damit ihr euch in eurem eigenen Code zurecht findet![/TD]
[/TR]
[/TABLE]
[TABLE="width: 800, align: right"]
[TR]
[TD]Nun solltet ihr bevor ihr anfangt euren Quelltext zu schreiben, die Verweise nochmals überprüfen, denn in unserem Fall müssen wir einen Verweis hinzufügen!
Dazu gehen wir oben in der Leisten, auf Projekt und auf Verweis hinzufügen und fügen dem Projekt die MYSQL.DATA.dll hinzu.
Nun haben wir uns fertig auf das Projekt vorbereitet, und können uns nun ganz dem Quelltext widmen.
Ich wiederhole mich nochmals, dass ihr genau darauf achten sollt, sauber und übersichtlich zu Arbeiten, dass ihr bei größeren Projekten den überblick, oder eure Teamkollegen, sich schneller in eurem Quellcode zurechtfinden.
Das folgende Projekt, und Quelltext, wird auch unter meiner Seite World of Retroid ← Where awesomeness happens zu finden sein.
Das Sourceprojekt wird nur auf meiner Seite zu finden sein.
Falls Probleme oder Fragen auftauchen, werde ich sie gerne hier im Thread u.o auch per PM beantworten.
[/TD]
[TD="align: right"][/TD]
[/TR]
[/TABLE]
Tutorial
Nun kommen wir zum eigentlichen Thema des Tutorials, und zwar dem Quelltext.
Wir fügen zuerst dem Projekt zwei neuen Namespace hinzu
Als nächtes bauen wir die MySQL verbindung mit eurer Datenbank auf. Dazu benutze ich folgende Funktion.
Quellcode
- [COLOR=#0000ff]public bool[/COLOR] tryLogin([COLOR=#0000ff]string[/COLOR] username, [COLOR=#0000ff]string[/COLOR] password)
- {
- MySqlConnection con = [COLOR=#0000ff]new[/COLOR] MySqlConnection("[COLOR=#ff0000]host=localhost;user=root;password=;database=forum;[/COLOR]");
- MySqlCommand cmd = [COLOR=#0000ff]new[/COLOR] MySqlCommand([COLOR=#ff0000]"SELECT * FROM user WHERE username = '[/COLOR]" + username + "' [COLOR=#ff0000]AND password[/COLOR] = '" + password + "';");
- cmd.Connection = con;
- con.Open();
- MySqlDataReader reader = cmd.ExecuteReader();
- [COLOR=#0000ff]if[/COLOR] (reader.Read() != [COLOR=#0000ff]false[/COLOR])
- {
- [COLOR=#0000ff]if[/COLOR] (reader.IsDBNull(0) == true)
- {
- cmd.Connection.Close();
- reader.Dispose();
- cmd.Dispose();
- [COLOR=#0000ff]return false[/COLOR];
- }
- [COLOR=#0000ff]else[/COLOR]
- {
- cmd.Connection.Close();
- reader.Dispose();
- cmd.Dispose();
- [COLOR=#0000ff] return true[/COLOR];
- }
- }
- [COLOR=#0000ff] else[/COLOR]
- {
- [COLOR=#0000ff]return false[/COLOR];
- }
- }
Dort könnt ihr wie ihr seht, eure eigene Datenbank/Server und Datenbanktables bearbeiten. Zu den anderen Funktionen wie das MySQLDataReader komme ich in einem anderen Tutorial und werde es euch genaustens erklären, da mir doch gerade die Zeit ein wenig fehlt. Deswegen ist das doch wohl eher ein Show Code, anstatt ein Tutorial. Hoffe trozdem das dies euch weiterhelfen wird.
Als nächtes kommt der 1.Button zum Einsatz, dieser dient zum Einloggen des Programm's.
Dazu benutzen wir folgedes
Quellcode
- [COLOR=#0000ff]private void [/COLOR]button1_Click_1([COLOR=#0000ff]object[/COLOR] sender, EventArgs e)
- {
- [COLOR=#0000ff]if[/COLOR] (tryLogin(textBox1.Text, textBox2.Text) == [COLOR=#0000ff]true[/COLOR])
- {
- MessageBox.Show("Eingeloggt!");
- frm.Show();
- Form frm = new Form2();
- [COLOR=#0000ff]this[/COLOR].Hide();
- }
- [COLOR=#0000ff]else[/COLOR]
- {
- MessageBox.Show("Benutzername oder Passwort ist falsch!");
- }
- }
diese Funktion frägt das public bool tryLogin was wir vorhin erstellt haben ab, der in unserem Fall Benutzername und Passwort von
textBox1 und textBox2 mit der Datenbank übereinstimmt. Falls diese Eingaben richtig sind, kommen diese Funktionen ins Spiel:
Quellcode
- MessageBox.Show("Eingeloggt!"); [COLOR=#008000]//Falls Benutzername und PW richtig waren, kommt eine Messagebox mit den Worten eingeloggt! [/COLOR]
- frm.Show();
- Form frm = new Form2(); [COLOR=#008000]//öffnet eine 2te Form fals die Daten richtig waren[/COLOR]
- [COLOR=#0000ff]this[/COLOR].Hide();[COLOR=#008000]// macht das Login Fenster unsichtbar.[/COLOR]
Und falls die Eingaben falsch waren, kommt die else-Funktion zum Einsatz
So bekommt ihr eine Messagebox mit der Message :"Benutzername oder Passwort ist falsch!"
Wenn ihr nun alles befolgt habt, könnt ihr nun euer Programm mit einem MySQL Login versehen.
Ich hoffe das dies euch ein wenig weitergeholfen hat.
Liebe Grüße