Implementation case of php registration and login interface
This article mainly introduces the implementation case of PHP registration and login interface. Interested friends can refer to it. I hope it will be helpful to everyone.
At first I thought the two functions of registration and login on a website were magical. Later, I did some research and found that the truth is actually very simple. Let’s take a look at how to implement it. . . .
I created several files on my computer:
login.html (login page)
register.html (Registration page)
success.html (Login success redirect page)
return.html (Registration success page )
login.php
register.php
Login interface and registration interface and success.html are combined There is no
, everything is just some html tags as follows:
<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 is the page that appears after successful registration. There is a js code in it that is used to return to the login interface regularly
<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 It is the background page corresponding to the registration page
<?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 login interface corresponding to the background file
<?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>"; } } } } ?>
I still have a lot to improve when I have nothing to do. You are welcome to ask questions and discuss and provide easier methods!
The above is the entire content of this article, I hope it will be helpful to everyone's study.
Related recommendations:
phpWhat are the steps to use redis long connection
phpDetailed explanation of application containerization and deployment
##phpHow to implement data export
phpSimple winning algorithm example
##
The above is the detailed content of Implementation case of php registration and login interface. For more information, please follow other related articles on the PHP Chinese website!

APHPDependencyInjectionContainerisatoolthatmanagesclassdependencies,enhancingcodemodularity,testability,andmaintainability.Itactsasacentralhubforcreatingandinjectingdependencies,thusreducingtightcouplingandeasingunittesting.

Select DependencyInjection (DI) for large applications, ServiceLocator is suitable for small projects or prototypes. 1) DI improves the testability and modularity of the code through constructor injection. 2) ServiceLocator obtains services through center registration, which is convenient but may lead to an increase in code coupling.

PHPapplicationscanbeoptimizedforspeedandefficiencyby:1)enablingopcacheinphp.ini,2)usingpreparedstatementswithPDOfordatabasequeries,3)replacingloopswitharray_filterandarray_mapfordataprocessing,4)configuringNginxasareverseproxy,5)implementingcachingwi

PHPemailvalidationinvolvesthreesteps:1)Formatvalidationusingregularexpressionstochecktheemailformat;2)DNSvalidationtoensurethedomainhasavalidMXrecord;3)SMTPvalidation,themostthoroughmethod,whichchecksifthemailboxexistsbyconnectingtotheSMTPserver.Impl

TomakePHPapplicationsfaster,followthesesteps:1)UseOpcodeCachinglikeOPcachetostoreprecompiledscriptbytecode.2)MinimizeDatabaseQueriesbyusingquerycachingandefficientindexing.3)LeveragePHP7 Featuresforbettercodeefficiency.4)ImplementCachingStrategiessuc

ToimprovePHPapplicationspeed,followthesesteps:1)EnableopcodecachingwithAPCutoreducescriptexecutiontime.2)ImplementdatabasequerycachingusingPDOtominimizedatabasehits.3)UseHTTP/2tomultiplexrequestsandreduceconnectionoverhead.4)Limitsessionusagebyclosin

Dependency injection (DI) significantly improves the testability of PHP code by explicitly transitive dependencies. 1) DI decoupling classes and specific implementations make testing and maintenance more flexible. 2) Among the three types, the constructor injects explicit expression dependencies to keep the state consistent. 3) Use DI containers to manage complex dependencies to improve code quality and development efficiency.

DatabasequeryoptimizationinPHPinvolvesseveralstrategiestoenhanceperformance.1)Selectonlynecessarycolumnstoreducedatatransfer.2)Useindexingtospeedupdataretrieval.3)Implementquerycachingtostoreresultsoffrequentqueries.4)Utilizepreparedstatementsforeffi


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

WebStorm Mac version
Useful JavaScript development tools

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function
