


So implementieren Sie die Funktion zum Abrufen vergessener Passwörter in PHP
So implementieren Sie die Funktion zum Abrufen vergessener Passwörter in PHP: 1. Benutzer müssen bei der Registrierung eine E-MAIL angeben. 2. Öffnen Sie das Formular und geben Sie die für die Registrierung verwendete E-MAIL ein. 3. Suchen Sie die Benutzerinformationen aus der Datenbank , Und aktualisieren Sie das Passwort des Benutzers auf ein temporäres Passwort. 4. Verwenden Sie die Jmail-Funktion, um das Passwort zu ändern.
Die Betriebsumgebung dieses Tutorials: Windows 10-System, PHP5.6. Dieser Artikel gilt für alle Computermarken.
Empfohlen: „PHP-Video-Tutorial“
Einfache Implementierung der Funktion zum Abrufen von PHP-Mitgliedskennwörtern
Einstellungsideen
1. Benutzer müssen bei der Registrierung eine E-MAIL angeben. Der Zweck besteht darin, diese E-Mail-Adresse zu verwenden Passwörter abrufen.
2. Wenn der Benutzer sein Passwort oder seinen Benutzernamen vergisst, klicken Sie auf der Anmeldeseite auf den Hyperlink „Passwort abrufen“, öffnen Sie das Formular, geben Sie die für die Registrierung verwendete E-Mail-Adresse ein und senden Sie es ab.
3. Das System findet die Benutzerinformationen aus der Datenbank über das Postfach und aktualisiert das Passwort des Benutzers auf ein temporäres Passwort (zum Beispiel: 12345678).
4. Das System verwendet die Jmail-Funktion, um die Informationen des Benutzers an die Mailbox des Benutzers zu senden (der Inhalt umfasst: Benutzername, temporäres Passwort und Aufforderungen, den Benutzer daran zu erinnern, das temporäre Passwort rechtzeitig zu ändern).
5. Benutzer können sich mit einem temporären Passwort anmelden.
HTML
Wir platzieren eine Seite auf der Seite zum Abrufen des Passworts, auf der der Benutzer die für die Registrierung verwendete E-Mail-Adresse eingeben muss, und senden dann die Front-End-JS, um die Interaktion abzuwickeln.
Der Code lautet wie folgt:
<p><strong>輸入您註冊的電子郵箱,找回密碼:</strong></p> <p><input type="text" class="input" name="email" id="email"><span id="chkmsg"></span></p> <p><input type="button" class="btn" id="sub_btn" value="http://www.bitscn.com/pdb/php/201609/提 交"></p>
jQuery
Nachdem der Benutzer die E-Mail-Adresse eingegeben und auf „Senden“ geklickt hat, überprüft jQuery zunächst, ob das E-Mail-Format korrekt ist, und sendet eine Ajax-Anfrage an den Hintergrund sendmail.php . sendmail.php ist dafür verantwortlich, zu überprüfen, ob die E-Mail-Adresse vorhanden ist, und sendet die entsprechenden Verarbeitungsergebnisse an die Startseite. Bitte sehen Sie sich den jQuery-Code an:
Der Code lautet wie folgt
$(function(){ $("#sub_btn").click(function(){ var email = $("#email").val(); var preg = /^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*/; //匹配Email if(email=='' || !preg.test(email)){ $("#chkmsg").html("請填寫正確的郵箱!"); }else{ $("#sub_btn").attr("disabled","disabled").val('提交中..').css("cursor","default"); $.post("sendmail.php",{mail:email},function(msg){ if(msg=="noreg"){ $("#chkmsg").html("該郵箱尚未註冊!"); $("#sub_btn").removeAttr("disabled").val('提 交').css("cursor","pointer"); }else{ $(".demo").html("<h3>"+msg+"</h3>"); } }); } }); })
Der oben verwendete jQuery-Code lautet Sehr praktisch und prägnant, um den interaktiven Front-End-Vorgang abzuschließen. Wenn Sie über eine bestimmte jQuery-Grundlage verfügen, ist der obige Code selbsterklärend und erfordert keine Erklärung.
Vergessen Sie natürlich nicht, die jQuery-Bibliotheksdatei auf die Seite zu laden. In 80 % der Fälle fragen mich einige Studenten, warum sie die aus dem Internet heruntergeladene Demo nicht verwenden können oder anderen Dateien ist falsch und die erforderlichen Dateien werden nicht geladen.
PHP
sendmail.php muss überprüfen, ob die E-Mail in der Systembenutzertabelle vorhanden ist. Wenn ja, lesen Sie die Benutzerinformationen, verschlüsseln Sie die Benutzer-ID, den Benutzernamen und das Passwort mit MD5, um eine spezielle Zeichenfolge als Bestätigungscode zu generieren Rufen Sie das Passwort ab und erstellen Sie dann die URL. Um die Aktualität des URL-Links zu kontrollieren, zeichnen wir gleichzeitig die Vorgangszeit auf, wenn der Benutzer die Aktion zum Abrufen des Passworts sendet, und rufen schließlich die E-Mail-Sendeklasse auf, um die E-Mail an das Postfach des Benutzers zu senden Die Klasse smtp.class.php wurde gepackt, bitte laden Sie sie herunter.
Der Code lautet wie folgt:
include_once("connect.php");//連接數據庫 $email = stripslashes(trim($_POST['mail'])); $sql = "select id,username,password from `t_user` where `email`='$email'"; $query = mysql_query($sql); $num = mysql_num_rows($query); if($num==0){//該郵箱尚未註冊! echo 'noreg'; exit; }else{ $row = mysql_fetch_array($query); $getpasstime = time(); $uid = $row['id']; $token = md5($uid.$row['username'].$row['password']);//組合驗證碼 $url = "/demo/resetpass/reset.php?email=".$email." &token=".$token;//構造URL $time = date('Y-m-d H:i'); $result = sendmail($time,$email,$url); if($result==1){//郵件發送成功 $msg = '系統已向您的郵箱發送了一封郵件<br/>請登錄到您的郵箱及時重置您的密碼!'; //更新數據發送時間 mysql_query("update `t_user` set `getpasstime`='$getpasstime' where id='$uid '"); }else{ $msg = $result; } echo $msg; } //發送郵件 function sendmail($time,$email,$url){ include_once("smtp.class.php"); $smtpserver = ""; //SMTP服務器,如smtp.163.com $smtpserverport = 25; //SMTP服務器端口 $smtpusermail = ""; //SMTP服務器的用戶郵箱 $smtpuser = ""; //SMTP服務器的用戶帳號 $smtppass = ""; //SMTP服務器的用戶密碼 $smtp = new Smtp($smtpserver, $smtpserverport, true, $smtpuser, $smtppass); //這裏面的一個true是表示使用身份驗證,否則不使用身份驗證. $emailtype = "HTML"; //信件類型,文本:text;網頁:HTML $smtpemailto = $email; $smtpemailfrom = $smtpusermail; $emailsubject = "www.bitsCN.com - 找回密碼"; $emailbody = "親愛的".$email.":<br/>您在".$time."提交了找回密碼請求。請點擊下面的鏈接重置密碼 (按鈕24小時內有效)。<br/><a href='".$url."'target='_blank'>".$url."</a>"; $rs = $smtp->sendmail($smtpemailto, $smtpemailfrom, $emailsubject, $emailbody, $emailtype); return $rs; }
Okay, zu diesem Zeitpunkt erhält Ihre E-Mail eine E-Mail zum Abrufen des Passworts. Im E-Mail-Inhalt befindet sich ein URL-Link, um die E-Mail zu überprüfen.
Der Code lautet wie folgt:
include_once("connect.php");//連接數據庫 $token = stripslashes(trim($_GET['token'])); $email = stripslashes(trim($_GET['email'])); $sql = "select * from `t_user` where email='$email'"; $query = mysql_query($sql); $row = mysql_fetch_array($query); if($row){ $mt = md5($row['id'].$row['username'].$row['password']); if($mt==$token){ if(time()-$row['getpasstime']>24*60*60){ $msg = '該鏈接已過期!'; }else{ //重置密碼... $msg = '請重新設置密碼,顯示重置密碼表單,<br/>這裏只是演示,略過。'; } }else{ $msg = '無效的鏈接'; } }else{ $msg = '錯誤的鏈接!'; } echo $msg;
Das obige ist der detaillierte Inhalt vonSo implementieren Sie die Funktion zum Abrufen vergessener Passwörter in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

Wenn Sie ein erfahrener PHP-Entwickler sind, haben Sie möglicherweise das Gefühl, dass Sie dort waren und dies bereits getan haben. Sie haben eine beträchtliche Anzahl von Anwendungen entwickelt, Millionen von Codezeilen debuggt und eine Reihe von Skripten optimiert, um op zu erreichen

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

Dieses Tutorial zeigt, wie XML -Dokumente mit PHP effizient verarbeitet werden. XML (Extensible Markup-Sprache) ist eine vielseitige textbasierte Markup-Sprache, die sowohl für die Lesbarkeit des Menschen als auch für die Analyse von Maschinen entwickelt wurde. Es wird üblicherweise für die Datenspeicherung ein verwendet und wird häufig verwendet

Eine Zeichenfolge ist eine Folge von Zeichen, einschließlich Buchstaben, Zahlen und Symbolen. In diesem Tutorial wird lernen, wie Sie die Anzahl der Vokale in einer bestimmten Zeichenfolge in PHP unter Verwendung verschiedener Methoden berechnen. Die Vokale auf Englisch sind a, e, i, o, u und sie können Großbuchstaben oder Kleinbuchstaben sein. Was ist ein Vokal? Vokale sind alphabetische Zeichen, die eine spezifische Aussprache darstellen. Es gibt fünf Vokale in Englisch, einschließlich Großbuchstaben und Kleinbuchstaben: a, e, ich, o, u Beispiel 1 Eingabe: String = "TutorialPoint" Ausgabe: 6 erklären Die Vokale in der String "TutorialPoint" sind u, o, i, a, o, ich. Insgesamt gibt es 6 Yuan

Statische Bindung (statisch: :) implementiert die späte statische Bindung (LSB) in PHP, sodass das Aufrufen von Klassen in statischen Kontexten anstatt Klassen zu definieren. 1) Der Analyseprozess wird zur Laufzeit durchgeführt.

Was sind die magischen Methoden von PHP? Zu den magischen Methoden von PHP gehören: 1. \ _ \ _ Konstrukt, verwendet, um Objekte zu initialisieren; 2. \ _ \ _ Destruct, verwendet zur Reinigung von Ressourcen; 3. \ _ \ _ Call, behandeln Sie nicht existierende Methodenaufrufe; 4. \ _ \ _ GET, Implementieren Sie den dynamischen Attributzugriff; 5. \ _ \ _ Setzen Sie dynamische Attributeinstellungen. Diese Methoden werden in bestimmten Situationen automatisch aufgerufen, wodurch die Code -Flexibilität und -Effizienz verbessert werden.
