Heim >Backend-Entwicklung >PHP-Tutorial >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~