Es wird selten vorkommen, dass eine ansprechende Website ihren Kunden nicht die Erstellung eines Kontos vorschlägt. Dazu müssen sie einem neuen Benutzer die Möglichkeit geben, sich selbst zu registrieren und sich später über sein Konto anzumelden und mit der Website zu interagieren. PHP stellt genügend Dienstprogramme zur Verfügung, um schnell eine funktionsfähige Anmeldeseite einzurichten, die bei Bedarf auch später skaliert werden kann. Nachdem Sie ein einfaches Anmeldeformular zum Anfordern der Anmeldeinformationen eingerichtet haben, kann dasselbe PHP-Skript verwendet werden, um die Anmeldeinformationen zu verarbeiten und zu validieren und bei erfolgreicher Anmeldung auf die entsprechende Seite umzuleiten. Es bietet außerdem Optionen zum Erstellen und Speichern von Cookies und Sitzungen, um Benutzer zu verfolgen, sobald sie den Anmeldevorgang abgeschlossen haben.
WERBUNG Beliebter Kurs in dieser Kategorie PHP-ENTWICKLER - Spezialisierung | 8-Kurs-Reihe | 3 ProbetestsStarten Sie Ihren kostenlosen Softwareentwicklungskurs
Webentwicklung, Programmiersprachen, Softwaretests und andere
PHP ist eine skalierbare, zustandslose serverseitige Skriptsprache. Es ermöglicht das Erfassen von Formulardaten durch Speichern in den Arrays $_GET oder $_POST, je nachdem, ob die beim Absenden des Formulars verwendete Methode GET oder POST ist. Im Allgemeinen wird aus Sicherheitsgründen die Post-Methode bevorzugt. Bei der Übermittlung können diese Arrays anhand der Eingabefeldnamen indiziert werden, um den spezifischen Wert zu erhalten.
Für Anmeldeformulare werden die Anmeldeinformationen in diesen Arrays übergeben und gespeichert, bei denen es sich in den meisten Fällen nur um eine Reihe von Benutzernamen und Passwörtern handelt. Je nach Anforderung kann entweder die Kombination aus Benutzername und Passwort direkt im PHP-Code selbst validiert werden, oder der gültige Satz von Kombinationen aus Benutzername und Passwort kann in einer Datenbank gespeichert werden, die nachgeschlagen werden kann.
Lassen Sie uns eine Seite erstellen, Login.php, die die folgenden HTML-Zeilen enthält:
Code:
A sample login pageEnter Login Information:
Ausgabe:
Diese Zeilen erstellen ein sehr einfaches Formular, bei dem ein Benutzer zwei Felder eingeben muss, einen Benutzernamen und ein Passwort. Es stellt eine dritte Eingabe bereit, bei der es sich um eine Schaltfläche zum Senden handelt, und bewirkt, dass Formulardaten, d. h. Benutzername und Passwort, an den im Aktionsattribut des Formular-Tags genannten Ort gesendet werden. Da es oben leer ist, werden die Formularinformationen an dieselbe PHP-Seite übergeben.
Die obige Seite ist statischer HTML-Code, ohne dass der Benutzer tatsächlich validiert oder die Person bei internen Webseiten angemeldet wird. Dazu müssen wir aufgrund der Methode posts.
die in den in $_POST gespeicherten Feldern username und pwd übergebenen Werte verarbeitenDamit die Werte vorhanden sind, kann überprüft werden mit:
Code:
Nachdem wir überprüft haben, dass beide Eingaben tatsächlich vorhanden sind, können wir ihre Werte validieren und eine Person zur entsprechenden Willkommensseite weiterleiten.
Dies können wir erreichen, indem wir den folgenden einfachen Code in den oben gezeigten if-Anweisungsblock einfügen:
Code:
$username = $_POST['username']; $password = $_POST['pwd']; if($username == "admin" && $password == "l0G3In"){ header('location: Home.php'); } else { $error = "Invalid username or password!"; }
Mit den obigen Zeilen wird dem Benutzer, sobald er einen gültigen Satz an Anmeldeinformationen übermittelt hat, der Zugriff auf home.php gestattet, oder wir speichern eine Fehlermeldung, die dem Benutzer angezeigt werden kann.
Wir möchten nicht, dass sich ein Benutzer bei jeder Anfrage wiederholt anmeldet. Daher müssen wir den Überblick über die Benutzer behalten, die sich angemeldet haben, unabhängig von der Seite, die sie anfordern. Eine Möglichkeit, dies in PHP zu erreichen, ist die Verwendung von Sitzungen.
Kurz gesagt handelt es sich bei Sitzungen um kleine serverseitige Informationen, die vorübergehend für einen Client gespeichert werden, sobald die Seite angefordert wird. In PHP wird dies erreicht, indem die Funktion session_start() als erste Zeile im Skript aufgerufen wird. Beim nächsten Zugriff auf die Seite erstellt session_start() keine neue Sitzung, sondern ruft Informationen der zuvor gestarteten Sitzung ab und speichert sie in einem speziellen Array $_SESSION.
Werte, die über Seiten hinweg übergeben werden sollen, während eine Sitzung aktiv ist, können auf ähnliche Weise wie bei einem normalen Array festgelegt werden, und die Funktion isset() kann verwendet werden, um zu überprüfen, ob ein bestimmter Wert innerhalb des Arrays verfügbar ist.
In Kombination aller besprochenen Dinge sieht der Code wie folgt aus:
Code:
Ausgabe:
Jetzt muss auf jeder anderen Seite, die eine Anmeldung erfordert, nur noch überprüft werden, ob die Sitzungsschlüssel-Anmeldung festgelegt ist. Wenn nicht, kann der Benutzer zur Anmeldeseite weitergeleitet werden. Andernfalls hat er Zugriff auf die geheimen internen Inhalte.
Lassen Sie uns eines für Demozwecke erstellen:
Code:
Welcome to User's Home PageWishing you a good day!!
Ausgabe:
Der obige Code ruft zunächst die Sitzungsdetails ab, indem er session_start() aufruft. Anschließend wird überprüft, ob die Sitzung für einen Benutzer, der den Anmeldevorgang abgeschlossen hat, noch aktiv ist. Wenn nicht, wird der Benutzer zur Seite „Login.php“ weitergeleitet. Wenn sich der Benutzer erfolgreich angemeldet hat, stehen dem Benutzer die restlichen Inhalte zur Verfügung.
Es ist extrem einfach, Anmeldeseiten in PHP zu erstellen. Hier haben wir die Anmeldeinformationen direkt im Skript gespeichert, idealerweise (und am häufigsten) werden sie jedoch in einer Art Datenbank oder einem Schlüsselmanager gespeichert. Auch hier haben wir Sitzungen verwendet, die auf der Browserseite gespeichert werden. Sie können jedoch Cookies verwenden, die auf der Browserseite (Clientseite) gespeichert werden, aber weniger zuverlässig sind.
Das obige ist der detaillierte Inhalt vonAnmeldeseite in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!