


Implementierungsfall einer PHP-Registrierungs- und Anmeldeschnittstelle (empfohlen)_php-Beispiel
Zuerst dachte ich, die beiden Funktionen Registrierung und Login auf einer Website seien magisch. Später habe ich etwas recherchiert und festgestellt, dass das Prinzip eigentlich sehr einfach ist. . . .
Ich habe ein paar Dateien auf meinem Computer erstellt:
login.html (Anmeldeseite)
register.html (Registrierungsseite)
success.html (Login erfolgreich Sprungseite)
return.html (Registrierungserfolgsseite)
login.php
register.php
Die Anmeldeoberfläche, die Registrierungsoberfläche und success.html sind nicht vorhanden
Alles ist wie folgt im HTML-Format gekennzeichnet:
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>登录界面</title> </head> <body> <form method="post" action="login.php"> 账号: <input type="text" name="usernamel"><br/><br/> 密码: <input type="password" name="passwordl"> <input type="submit" value="登录" name="subl"> <a href="http://127.0.0.1:8080/register.html">没有账号,注册</a> </form> </body> </html>
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>会员注册</title> </head> <body> <form method="post" action="register.php"> 账 户: <input type="text" name="username"><br/><br/> 密 码: <input type="password" name="password"><br/><br/> 密码确认: <input type="password" name="password2"> <input type="submit" value="注册" name="sub"> </form> </body> </html>
return.html ist die Seite, die nach erfolgreicher Registrierung angezeigt wird. Darin befindet sich ein js-Code, der verwendet wird, um regelmäßig zur Anmeldeoberfläche zurückzukehren
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>无标题文档</title> </head> <body> 注册成功!<br/> 5秒后返回登录界面<br/> 你也可以直接点击回到<a href="http://127.0.0.1:8080/login.html">登录页面</a> <script type="text/javascript"> setTimeout("ren()",5000); function ren() { window.location="http://127.0.0.1:8080/login.html"; } </script> </body> </html>
register.php Dies ist die Backend-Seite, die der Registrierungsseite entspricht
<?php $link=mysql_connect("localhost","root","207207");//链接数据库 header("Content-type:text/html;charset=utf-8"); if($link) { //echo"链接数据库成功"; $select=mysql_select_db("login",$link);//选择数据库 if($select) { //echo"选择数据库成功!"; if(isset($_POST["sub"])) { $name=$_POST["username"]; $password1=$_POST["password"];//获取表单数据 $password2=$_POST["password2"]; if($name==""||$password1=="")//判断是否填写 { echo"<script type="."\""."text/javascript"."\"".">"."window.alert"."("."\""."请填写完成!"."\"".")".";"."</script>"; echo"<script type="."\""."text/javascript"."\"".">"."window.location="."\""."http://127.0.0.1:8080/register.html"."\""."</script>"; exit; } if($password1==$password2)//确认密码是否正确 { $str="select count(*) from register where username="."'"."$name"."'"; $result=mysql_query($str,$link); $pass=mysql_fetch_row($result); $pa=$pass[0]; if($pa==1)//判断数据库表中是否已存在该用户名 { echo"<script type="."\""."text/javascript"."\"".">"."window.alert"."("."\""."该用户名已被注册"."\"".")".";"."</script>"; echo"<script type="."\""."text/javascript"."\"".">"."window.location="."\""."http://127.0.0.1:8080/register.html"."\""."</script>"; exit; } $sql="insert into register values("."\""."$name"."\"".","."\""."$password1"."\"".")";//将注册信息插入数据库表中 //echo"$sql"; mysql_query($sql,$link); mysql_query('SET NAMES UTF8'); $close=mysql_close($link); if($close) { //echo"数据库关闭"; //echo"注册成功!"; echo"<script type="."\""."text/javascript"."\"".">"."window.location="."\""."http://127.0.0.1:8080/return.html"."\""."</script>"; } } else { echo"<script type="."\""."text/javascript"."\"".">"."window.alert"."("."\""."密码不一致!"."\"".")".";"."</script>"; echo"<script type="."\""."text/javascript"."\"".">"."window.location="."\""."http://127.0.0.1:8080/register.html"."\""."</script>"; } } } } ?>
Login.php-Anmeldeschnittstelle entspricht der Hintergrunddatei
<?php header("Content-type:text/html;charset=utf-8"); $link=mysql_connect("localhost","root","207207"); if($link) { $select=mysql_select_db("login",$link); if($select) { if(isset($_POST["subl"])) { $name=$_POST["usernamel"]; $password=$_POST["passwordl"]; if($name==""||$password=="")//判断是否为空 { echo"<script type="."\""."text/javascript"."\"".">"."window.alert"."("."\""."请填写正确的信息!"."\"".")".";"."</script>"; echo"<script type="."\""."text/javascript"."\"".">"."window.location="."\""."http://127.0.0.1:8080/login.html"."\""."</script>"; exit; } $str="select password from register where username="."'"."$name"."'"; mysql_query('SET NAMES UTF8');20 $result=mysql_query($str,$link); $pass=mysql_fetch_row($result); $pa=$pass[0]; if($pa==$password)//判断密码与注册时密码是否一致 { echo"登录成功!"; echo"<script type="."\""."text/javascript"."\"".">"."window.location="."\""."http://127.0.0.1:8080/success.html"."\""."</script>"; } { echo"<script type="."\""."text/javascript"."\"".">"."window.alert"."("."\""."登录失败!"."\"".")".";"."</script>"; echo"<script type="."\""."text/javascript"."\"".">"."window.location="."\""."http://127.0.0.1:8080/login.html"."\""."</script>"; } } } } ?>
Ich habe noch viel zu verbessern, wenn ich nichts zu tun habe. Sie können gerne Fragen stellen und einfachere Methoden besprechen und anbieten!
Das Obige ist der gesamte Inhalt des vom Herausgeber bereitgestellten PHP-Registrierungs- und Anmeldeschnittstellen-Implementierungsfalls (empfohlen). Ich hoffe, Sie werden Script Home unterstützen~

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

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

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



Die PHP Client -URL -Erweiterung (CURL) ist ein leistungsstarkes Tool für Entwickler, das eine nahtlose Interaktion mit Remote -Servern und REST -APIs ermöglicht. Durch die Nutzung von Libcurl, einer angesehenen Bibliothek mit Multi-Protokoll-Dateien, erleichtert PHP Curl effiziente Execu

Alipay PHP ...

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.

In Artikel wird die in PHP 5.3 eingeführte LSB -Bindung (LSB) erörtert, die die Laufzeitauflösung der statischen Methode ermöglicht, um eine flexiblere Vererbung zu erfordern. Die praktischen Anwendungen und potenziellen Perfo von LSB

In Artikel werden wichtige Sicherheitsfunktionen in Frameworks erörtert, um vor Schwachstellen zu schützen, einschließlich Eingabevalidierung, Authentifizierung und regelmäßigen Aktualisierungen.

In dem Artikel werden Frameworks hinzugefügt, das sich auf das Verständnis der Architektur, das Identifizieren von Erweiterungspunkten und Best Practices für die Integration und Debuggierung hinzufügen.

Senden von JSON -Daten mithilfe der Curl -Bibliothek von PHP in der PHP -Entwicklung müssen häufig mit externen APIs interagieren. Eine der gängigen Möglichkeiten besteht darin, die Curl Library zu verwenden, um Post � ...

Eine offizielle Einführung in das nicht blockierende Merkmal der detaillierten Interpretation der nicht blockierenden Funktion von ReactPhp hat viele Fragen vieler Entwickler gestellt: "Reactphpisnon-BlockingByDefault ...
