Heim  >  Artikel  >  Backend-Entwicklung  >  Seite zum Ändern des PHP-Passworts

Seite zum Ändern des PHP-Passworts

WBOY
WBOYOriginal
2023-05-07 12:54:13846Durchsuche

PHP-Passwortänderungsseite

Wir alle müssen bei vielen Geschäftsvorgängen Passwörter verwenden. Die Frage der Vertraulichkeit von Passwörtern war schon immer ein sehr wichtiges Thema. Wenn es um die Datensicherheit geht, sollten Passwörter mit dem höchsten Schutzniveau verschlüsselt werden. Aber selbst wenn Ihr Passwort einwandfrei ist: Wenn Sie es vergessen, sind Ihre Daten nicht mehr zugänglich. In diesem Fall benötigen wir ein Passwort-Änderungstool, das uns beim Zurücksetzen eines neuen Passworts hilft, um sicherzustellen, dass die Daten zeitnah verwendet werden können.

In PHP ist das Erstellen einer Passwortänderungsseite relativ einfach. Im Folgenden sind die wichtigsten Schritte und der Implementierungsprozess aufgeführt.

Schritt 1 – Datenbankverbindung herstellen

Der erste Schritt besteht darin, eine Datenbankverbindung herzustellen. Hier können wir die MySQL-Datenbank verwenden. In der MySQL-Funktion von PHP können wir die Funktion mysqli_connect() verwenden, um eine Verbindung zur MySQL-Datenbank herzustellen.

Beispielcode:

$dbhost = 'localhost'; //Datenbank-Hostname
$dbname = 'mydatabase'; //Datenbankname
$dbpass = '' ; //Datenbankpasswort

$conn = mysqli_connect("$dbhost", "$dbuser", "$dbpass") or die ("Verbindungsfehler");

mysqli_select_db($conn,"$dbname") or die („Kann keine Verbindung zur Datenbank herstellen“);

Wenn die Verbindung fehlschlägt, wird eine Meldung wie „Verbindungsfehler“ oder „Kann keine Verbindung zur Datenbank herstellen“ angezeigt.

Schritt 2 – Erstellen Sie ein Passwort-Änderungsformular

Wir müssen ein Passwort-Änderungsformular in HTML erstellen.

Beispielcode:






< ;label for="confirmpassword">Passwort bestätigen:




In diesem Formular definieren wir drei Eingabefelder, um das alte Passwort, das neue Passwort und das Bestätigungspasswort zu erhalten. Hierbei ist zu beachten, dass wir das Typattribut im Passwort-Eingabefeld auf „Passwort“ setzen müssen, damit das Passwort ausgeblendet werden kann.

Schritt 3 – Formulardaten verarbeiten

Die Verarbeitung von Formulardaten ist ein sehr wichtiger Schritt. In diesem Schritt müssen wir überprüfen, ob die vom Benutzer eingegebenen Daten den Spezifikationen entsprechen. Außerdem müssen wir feststellen, ob das vom Benutzer eingegebene alte Passwort korrekt ist, und bestätigen, ob das zweimal eingegebene neue Passwort identisch ist.

Zuerst müssen wir überprüfen, ob die Daten vollständig sind. In diesem Beispiel sind alle drei unserer Eingabefelder erforderlich. Daher müssen wir das erforderliche HTML5-Attribut verwenden, um zu bestätigen, dass der Benutzer die erforderlichen Felder eingegeben hat.

Beispielcode:

Dieses erforderliche Attribut stellt sicher, dass der Eingabeinhalt im Formular nicht leer sein darf.

Als nächstes müssen wir das vom Benutzer eingegebene alte Passwort abrufen und es verschlüsseln. Der Grund, warum wir das Passwort verschlüsseln möchten, besteht darin, es in der Datenbank zu speichern. In diesem Fall können wir die Funktion md5() in PHP verwenden.

Beispielcode:

$oldpassword = md5($_POST['oldpassword']);

Als nächstes müssen wir überprüfen, ob das vom Benutzer eingegebene alte Passwort korrekt ist, was eine Abfrage der Datenbank erfordert.

Beispielcode:

$sql = "SELECT * FROM userdata WHERE password = '$oldpassword'";

$result = mysqli_query($conn, $sql) or die(mysqli_error($conn));

if( mysqli_num_rows($result) > 0) {

//Verifizierung des alten Passworts erfolgreich
} else {
//Verifizierung des alten Passworts fehlgeschlagen
}

Hier fragen wir das gespeicherte Passwort aus der Benutzerdatentabelle ab. Wenn die Anzahl der vom Abfrageergebnis zurückgegebenen Zeilen größer als 0 ist, bedeutet dies, dass das eingegebene alte Passwort korrekt ist. Andernfalls schlägt die Überprüfung des alten Passworts fehl.

Nachdem wir das alte Passwort erfolgreich überprüft haben, müssen wir erneut überprüfen, ob das neue Passwort den Anforderungen entspricht, und bestätigen, ob die beiden neuen Passworteingaben konsistent sind. Nachdem die Überprüfung abgeschlossen ist, müssen wir das neue Passwort verschlüsseln und in die Datenbank schreiben.

Beispielcode:

$newpassword = md5($_POST['newpassword']);

$sql = "UPDATE userdata SET password='$newpassword' WHERE id='$id'";

$result = mysqli_query ($conn, $sql) or die(mysqli_error($conn));

In diesem Beispiel verwenden wir die UPDATE-Anweisung von SQL, um das neue Passwort in die Benutzerdatentabelle zu schreiben.

Schritt 4 – Ergebnis der Passwortaktualisierung anzeigen

Im letzten Schritt müssen wir das Ergebnis der Passwortaktualisierung anzeigen.

Wir können die Funktion mysqli_affected_rows() aufrufen, um festzustellen, ob das Update erfolgreich ist. Wenn die Aktualisierung erfolgreich ist, gibt diese Funktion die Anzahl der aktualisierten Zeilen zurück (normalerweise 1); andernfalls gibt sie 0 zurück.

Beispielcode:

if(mysqli_affected_rows($conn) > 0) {

echo „Passwort geändert erfolgreich“;
} else {
echo „Passwort geändert fehlgeschlagen, bitte versuchen Sie es erneut“;
}

Durch die Kombination aller Codes können wir schließlich eine vollständige PHP-Passwortänderungsseite erstellen.

Vollständiger Code:

$dbhost = 'localhost'; //Datenbank-Hostname
$dbname = 'mydatabase'; //Datenbankname
$dbuser = 'root'; //Datenbankbenutzername
$dbpass = ''; //Datenbankpasswort

$conn = mysqli_connect("$dbhost ", "$dbuser", "$dbpass") oder sterben ("Verbindungsfehler");

mysqli_select_db($conn,"$dbname") oder sterben ("Verbindung zur Datenbank kann nicht hergestellt werden") ;

if(isset($_POST['submit'])) {
$oldpassword = md5($_POST['oldpassword']);
$newpassword = md5( $ _POST['newpassword']);
$confirmpassword = md5($_POST['confirmpassword']);
$id = $_POST['id'];

$ sql = "SELECT * FROM userdata WHERE password = '$oldpassword'";
$result = mysqli_query($conn, $sql) or die(mysqli_error($conn));

if (mysqli_num_rows($result) > 0) {

if($newpassword == $confirmpassword) {
  $sql = "UPDATE userdata SET password='$newpassword' WHERE id='$id'";
  $result = mysqli_query($conn, $sql) or die(mysqli_error($conn));

  if(mysqli_affected_rows($conn) > 0) {
    echo "密码修改成功";
  } else {
    echo "密码修改失败,请重试";
  }
} else {
  echo "两次输入的新密码不一致,请重新输入";
}

} else {

echo "旧密码验证失败";

}
}
?>

# 🎜🎜#








Durch die oben genannten Schritte können wir eine vollständige PHP-Passwortänderungsseite erstellen, um die Datensicherheit zu gewährleisten.

Das obige ist der detaillierte Inhalt vonSeite zum Ändern des PHP-Passworts. 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