Heim  >  Artikel  >  Backend-Entwicklung  >  So implementieren Sie die Benutzernamenüberprüfung in PHP MySQL

So implementieren Sie die Benutzernamenüberprüfung in PHP MySQL

PHPz
PHPzOriginal
2023-04-19 11:36:17760Durchsuche

Während des Website-Entwicklungsprozesses ist das Benutzeranmeldesystem eine sehr häufige Funktion. Einer der wichtigen Schritte besteht darin, zu überprüfen, ob der vom Benutzer eingegebene Benutzername und das Passwort übereinstimmen, um sicherzustellen, dass der Benutzer die richtigen Informationen eingibt, bevor er das System betritt.

In diesem Artikel wird erläutert, wie Sie mit PHP und MySQL die Funktion zur Überprüfung des Benutzernamens implementieren.

  1. Datenbank und Benutzertabelle erstellen

Zuerst müssen wir eine Datenbank in MySQL erstellen und darin eine Benutzertabelle erstellen. In diese Benutzertabelle müssen wir die folgenden Felder aufnehmen:

  • id: Benutzer-ID, selbsterhöhend.
  • Benutzername: Benutzername, eindeutig.
  • Passwort: Benutzerpasswort, gespeichert nach der Verschlüsselung.
  • created_at: Erstellungszeit, zeichnet die Benutzerregistrierungszeit auf.

Wir können die folgende SQL-Anweisung verwenden, um diese Benutzertabelle zu erstellen:

CREATE DATABASE-Test;
USE-Test;
CREATE TABLE-Benutzer (
id INT(11) NOT NULL AUTO_INCREMENT,
Benutzername VARCHAR(255) NOT NULL UNIQUE ,
Passwort VARCHAR(255) NOT NULL,
created_at DATETIME NOT NULL,
PRIMARY KEY (id)
);

  1. PHP-Code schreiben

Als nächstes müssen wir PHP-Code schreiben, um eine Verbindung zur MySQL-Datenbank herzustellen und zu überprüfen den Benutzernamen und das Passwort. Das Folgende ist ein einfaches PHP-Codebeispiel:

//Informationen zur MySQL-Datenbankverbindung
$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "test";

//Eine MySQL-Verbindung erstellen
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Verbindung fehlgeschlagen: " . $conn->connect_error);
}

// Holen Sie sich den Benutzernamen und das Passwort in den POST-Parametern
$username = $_POST["username"];
$password = $_POST["password"];

/ / Benutzername und Passwort überprüfen
$sql = "SELECT * FROM users WHERE username='{$username}'";
$result = $conn->query($sql);

if ($result-> ;num_rows > 0) {
$row = $result->fetch_assoc();
if (password_verify($password, $row["password"])) {

echo "登录成功";

} else {

echo "密码不正确";

}
} else {
echo "Benutzername existiert nicht";
}

$conn->close();
?>

Der Hauptprozess des obigen PHP-Codes umfasst:

  1. Stellen Sie eine MySQL-Datenbankverbindung zum Herstellen einer Verbindung her und Betrieb von MySQL-Daten. Es enthält vier Verbindungsparameter: $servername, $username, $password und $dbname, die zur Angabe der Serveradresse, des Benutzernamens, des Passworts und des Datenbanknamens der MySQL-Verbindung verwendet werden.
  2. Rufen Sie die vom Benutzer übermittelten POST-Parameter ab, einschließlich Benutzername und Passwort.
  3. Verwenden Sie die SQL SELECT-Anweisung, um abzufragen, ob in der Benutzertabelle Datensätze vorhanden sind, die dem Benutzernamen entsprechen. Wenn die Übereinstimmung erfolgreich ist, verwenden Sie die Funktion „password_verify“, um zu überprüfen, ob das vom Benutzer eingegebene Passwort mit dem in der Datenbank gespeicherten Passwort übereinstimmt. Hier ist zu beachten, dass wir die Funktion „password_hash“ verwenden sollten, um das Benutzerpasswort zu verschlüsseln, bevor wir es bei der Benutzerregistrierung in der Datenbank speichern, um die Sicherheit zu verbessern.
  4. Wenn die Verifizierung erfolgreich ist, wird dem Benutzer „Login Successful“ ausgegeben. Andernfalls wird je nach Verifizierungsfehler „Passwort ist falsch“ oder „Benutzername existiert nicht“ ausgegeben.
  5. Benutzerregistrierungsseite erstellen

Um den Prozess der Benutzerregistrierung und das Hinzufügen neuer Benutzerdatensätze zur Datenbank zu vereinfachen, können wir eine Benutzerregistrierungsseite erstellen. Auf dieser Seite bitten wir den Benutzer, seinen Benutzernamen und sein Passwort einzugeben und diese Informationen an den PHP-Code zu übergeben, den wir zuvor über die POST-Methode geschrieben haben.

Das Folgende ist ein Beispiel für eine einfache Benutzerregistrierungsseite:



Benutzerregistrierungsseite


< ; h1>Benutzerregistrierung

<label for="username">用户名:</label>
<input type="text" id="username" name="username"><br><br>
<label for="password">密码:</label>
<input type="password" id="password" name="password"><br><br>
<input type="submit" value="注册">



at Im obigen Code verwenden wir das Tag

, um ein Formular zu erstellen, um den Benutzernamen und das Passwort zu erfassen, die der Benutzer während des Registrierungsprozesses eingegeben hat. Dabei wird der Benutzername über das Textfeld und das Passwort über das Passwortfeld eingegeben.

  1. Zusammenfassung

In diesem Artikel haben wir vorgestellt, wie man PHP und MySQL verwendet, um die Funktion zur Überprüfung des Benutzernamens zu implementieren. Wir haben zunächst eine MySQL-Datenbank und eine Benutzertabelle erstellt und für jeden Benutzerdatensatz einen eindeutigen Benutzernamen und ein verschlüsseltes Passwort erstellt. Anschließend haben wir einen PHP-Code geschrieben, um eine Verbindung zur MySQL-Datenbank herzustellen und zu prüfen, ob der vom Benutzer eingegebene Benutzername und das Passwort übereinstimmen. Schließlich haben wir eine Benutzerregistrierungsseite erstellt, die es Benutzern ermöglicht, ein neues Konto in einem benutzerdefinierten Formular zu registrieren.

Das Obige wird in diesem Artikel vorgestellt. Ich hoffe, er kann Ihnen bei der Implementierung Ihrer Benutzerüberprüfungsfunktion helfen.

Das obige ist der detaillierte Inhalt vonSo implementieren Sie die Benutzernamenüberprüfung in PHP MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn