In diesem Tutorial zeig ich euch, wie man in VB.net mithilfe von PHP und mySQL ein Loginsystem baut. Ich habe vor 2 Tagen erst mit PHP lernen angefangen, also seit mir bitte nicht böse, dass manches eventuell sogar leichter oder anders gemacht werden kann/sollte.
Es folgt erstmal der Teil der Benutzerregistrierung.
Es wird benötigt:
Fangen wir an:
Als erstes benötigen wir eine Datenbank. Die sind meistens schon vorher festgelegt vom Anbieter. Wer die Datenbank eines Free-/Paidhosters nimmt, kann den folgenden Schritt überspringen.
Schritt 1: Datenbank anlegen (XAMPP)
Damit unser PHP Skript überhaupt auf mySQL Datenbank zugreifen kann, benötigen wir erstmal eine Datenbank. Dazu rufen wir mit unserem Standardwebbrowser die Seite localhost/phpmyadmin auf und melden uns dort an.
Dann sollte die Startseite von der mySQL Datenbankverwaltung aufgehen und ungefähr aussehen wie auf dem Screenshot:
Nun geben wir bei „Neue Datenbank anlegen“ den Namen unserer neuen Datenbank ein (z.B. „loginsystem“) und klicken auf „Anlegen“.
Schritt 2: Neue Tabelle anlegen(XAMPP und Webspace)
Wir melden uns bei PHPMYADMIN an und wählen unsere Datenbank aus. Nun können wir eine neue Tabelle anlegen. Diese nennen wir z.B. jetzt „anmeldeinformationen“. Bei Anzahl der Felder geben wir ein, wieviele Spalten erzeugt werden sollen. In diesem Beispiel benötigen wir 3 Spalten (Benutzername, E-Mail Adresse, Passwort). Nun klickt ihr auf OK.
Jetzt haben wir jeweils 3 Felder in die wir nun die Beschreibung der einzelnen Felder eintragen können. Nun tragen wir die Beschreibung der Felder wie auf dem folgenden Screenshot ein:
und klicken danach auf „Speichern“. Nun habt ihr eine neue Tabelle mit den 3 Feldern angelegt. Jetzt könnt ihr den Browser beenden denn jetzt kommt der PHP Teil.
Schritt 3: PHP Skript welches die Benutzerinformationen einträgt (XAMPP und Webspace)
Kopiert folgendes PHP Skript in ein Textbearbeitungsprogramm eurer Wahl und speichert dies als „register.php“ ab.
Ihr müsst nur „$dbhost“, „$dbname“, „$dbuser“ und „$dbpass“ entsprechend euren Logindaten der mySQL Datenbank anpassen. Diese erfahrt ihr in der Regel bei eurem Anbieter.
Schritt 4: Testen und Verwenden des PHP Skripts (XAMPP und Webspace)
Nun könnt ihr eure Logindaten mithilfe des PHP Skripts wie folgt in eure mySQL Datenbank eintragen. Gebt in einen Webbrowser folgende URL ein:
localhost/register.php?email=EMAILADRESSE&user=BENUTZERNAME&pw5=PASSWORT
In VB.net kann man dann drei Textboxen machen und einen Button, der folgendes Ausführt:
Um das ganze noch sicherer zu machen, könnt ihr das Passwort als MD5-Hash abspeichern
Dieses Skript gibt euch dann an, ob irgendein Fehler aufgetreten ist, wie z.B. wenn irgendeine Information vergessen wurde, oder ob die E-Mail oder der Benutzername bereits in der Datenbank existiert. Wenn ein Fehler auftritt, könnt ihr in VB.net diese „Errorcodes“ auswerten, und entsprechende Hinweise oder MessageBox(en) anzeigen lassen.
Erklärung der "Errorcodes":
Das war der Teil der Benutzerregistrierung. Wie man nun den Benutzernamen und das Passwort beim Login abfragt, folgt später.
Bei Fragen bitte eine PN schicken oder diesen Thread posten.
Das PHP-Skript habe ich komplett alleine geschrieben. Ihr dürft dieses Skript gerne kopieren und in eurem Projekt verwenden. Ob ihr nun meinen Namen (Benutzernamen) angebt bleibt euch überlassen.
Da der VB-Teil in dem Tutorial nur minimal ist, ist das eher ein Fall für den Off-Topic-Bereich, an statt für den Sourcecodeaustausch. Daher Topic verschoben.
Es folgt erstmal der Teil der Benutzerregistrierung.
Es wird benötigt:
- Paidspace/Freespace mit PHP Unterstützung und mindestens einer mySQL-Datenbank ODER
- XAMPP für Windows (zum Testen)
- Ein Texteditor wie z.B. der Editor von Windows oder Notepad++
Fangen wir an:
Als erstes benötigen wir eine Datenbank. Die sind meistens schon vorher festgelegt vom Anbieter. Wer die Datenbank eines Free-/Paidhosters nimmt, kann den folgenden Schritt überspringen.
Schritt 1: Datenbank anlegen (XAMPP)
Damit unser PHP Skript überhaupt auf mySQL Datenbank zugreifen kann, benötigen wir erstmal eine Datenbank. Dazu rufen wir mit unserem Standardwebbrowser die Seite localhost/phpmyadmin auf und melden uns dort an.
Dann sollte die Startseite von der mySQL Datenbankverwaltung aufgehen und ungefähr aussehen wie auf dem Screenshot:
Nun geben wir bei „Neue Datenbank anlegen“ den Namen unserer neuen Datenbank ein (z.B. „loginsystem“) und klicken auf „Anlegen“.
Schritt 2: Neue Tabelle anlegen(XAMPP und Webspace)
Wir melden uns bei PHPMYADMIN an und wählen unsere Datenbank aus. Nun können wir eine neue Tabelle anlegen. Diese nennen wir z.B. jetzt „anmeldeinformationen“. Bei Anzahl der Felder geben wir ein, wieviele Spalten erzeugt werden sollen. In diesem Beispiel benötigen wir 3 Spalten (Benutzername, E-Mail Adresse, Passwort). Nun klickt ihr auf OK.
Jetzt haben wir jeweils 3 Felder in die wir nun die Beschreibung der einzelnen Felder eintragen können. Nun tragen wir die Beschreibung der Felder wie auf dem folgenden Screenshot ein:
und klicken danach auf „Speichern“. Nun habt ihr eine neue Tabelle mit den 3 Feldern angelegt. Jetzt könnt ihr den Browser beenden denn jetzt kommt der PHP Teil.
Schritt 3: PHP Skript welches die Benutzerinformationen einträgt (XAMPP und Webspace)
Kopiert folgendes PHP Skript in ein Textbearbeitungsprogramm eurer Wahl und speichert dies als „register.php“ ab.
PHP-Quellcode
- <?php
- // Skript geschrieben am 01.08.2009 von Neo
- // Verbindungsinformationen zur Datenbank
- $dbhost = "localhost";
- $dbname = "loginsystem";
- $dbuser = "root";
- $dbpass = "mysql-pw";
- // Variablen festlegen
- $email = $_GET['email'];
- $username = $_GET['user'];
- $password = $_GET['pw5'];
- // Verbindung zur MySQL Datenbank herstellen und Daten überprüfen und eintragen
- mysql_connect($dbhost, $dbuser, $dbpass)or die("Could not connect: ".mysql_error());
- $verb = mysql_select_db($dbname);
- if ($verb)
- {
- echo("Verbindung zu Datenbank aufgebaut!");
- if ($email == "" or $username == "" or $password == "")
- {
- if ($email == "")
- echo("<br>Errorcode: <b>2</b>");
- if ($username == "")
- echo("<br>Errorcode: <b>3</b>");
- if ($password == "")
- echo("<br>Errorcode: <b>4</b>");
- }
- else
- {
- $abfragen_email = "SELECT email FROM anmeldeinformationen WHERE email='$email'";
- $abfragen_user = "SELECT username FROM anmeldeinformationen WHERE username='$username'";
- $ergebnis_email = mysql_query($abfragen_email);
- $ergebnis_user = mysql_query($abfragen_user);
- if (mysql_num_rows($ergebnis_email) > 0 or mysql_num_rows($ergebnis_user) > 0)
- {
- echo("<br>Errorcode: <b>1</b><br>Username und/oder E-Mail Adresse existiert bereits");
- }
- else
- {
- $sql = "INSERT INTO ".
- "anmeldeinformationen (username, pw5, email) ".
- "VALUES ('".
- $username."', '".
- $password."', '".
- $email."')";
- $eintrag = mysql_query($sql);
- if ($eintrag)
- {echo('<br>FINISHED');}
- else
- {die("<br>Errorcode: <b>5</b>");}
- }
- }
- }
- else
- {
- die('<br>Errorcode: <b>6</b>');
- }
- mysql_close();
- ?>
Ihr müsst nur „$dbhost“, „$dbname“, „$dbuser“ und „$dbpass“ entsprechend euren Logindaten der mySQL Datenbank anpassen. Diese erfahrt ihr in der Regel bei eurem Anbieter.
Schritt 4: Testen und Verwenden des PHP Skripts (XAMPP und Webspace)
Nun könnt ihr eure Logindaten mithilfe des PHP Skripts wie folgt in eure mySQL Datenbank eintragen. Gebt in einen Webbrowser folgende URL ein:
localhost/register.php?email=EMAILADRESSE&user=BENUTZERNAME&pw5=PASSWORT
In VB.net kann man dann drei Textboxen machen und einen Button, der folgendes Ausführt:
VB.NET-Quellcode
- Dim webbrowser1 as New WebBrowser
- webbrowser1.Navigate("http://localhost/register.php?email=" & TextBox1.Text & "&user=" & TextBox2.Text & "&pw5=" TextBox3.Text)
- Do While webbrowser1.ReadyState <> WebBrowserReadyState.Complete
- Application.DoEvents()
- Loop
- If webbrowser1.DocumentText.Contains("1") Then
- MessageBox.Show("Diese E-Mail und/oder der Benutzername existiert bereits in unserer Datenbank!", "E-Mail/Benutzername existiert bereits", MessageBoxButtons.OK, MessageBoxIcon.Error)
- ElseIf webbrowser1.DocumentText.Contains("FINISHED") Then
- MessageBox.Show("Benutzer erfolgreich registriert, Sie können sich nun Anmelden", "Registrierung erfolgreich", MessageBoxButtons.OK, MessageBoxIcon.Information)
- End If
Um das ganze noch sicherer zu machen, könnt ihr das Passwort als MD5-Hash abspeichern
Dieses Skript gibt euch dann an, ob irgendein Fehler aufgetreten ist, wie z.B. wenn irgendeine Information vergessen wurde, oder ob die E-Mail oder der Benutzername bereits in der Datenbank existiert. Wenn ein Fehler auftritt, könnt ihr in VB.net diese „Errorcodes“ auswerten, und entsprechende Hinweise oder MessageBox(en) anzeigen lassen.
Erklärung der "Errorcodes":
- Errorcode 1: Benutzername und/oder E-Mail Adresse sind in der Datenbank bereits vorhanden
- Errorcode 2: Das Feld "E-Mail" ist leer
- Errorcode 3: Das Feld "Benutzername" ist leer
- Errorcode 4: Das Feld "Passwort" ist leer
- Errorcode 5: Es ist ein Fehler beim Eintragen der Daten in die Datenbank aufgetreten.
- Errorcode 6: Es konnte keine Verbindung zur Datenbank aufgebaut werden.
Das war der Teil der Benutzerregistrierung. Wie man nun den Benutzernamen und das Passwort beim Login abfragt, folgt später.
Bei Fragen bitte eine PN schicken oder diesen Thread posten.
Das PHP-Skript habe ich komplett alleine geschrieben. Ihr dürft dieses Skript gerne kopieren und in eurem Projekt verwenden. Ob ihr nun meinen Namen (Benutzernamen) angebt bleibt euch überlassen.
Da der VB-Teil in dem Tutorial nur minimal ist, ist das eher ein Fall für den Off-Topic-Bereich, an statt für den Sourcecodeaustausch. Daher Topic verschoben.
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()