登录注册系统是日常上网最普通的操作,我设了一个分类一步步完善注册登录系统,若哪里有误,请见谅。
所用语言:php
数据库 :mysql
本次实现功能:
1.用户注册
2.用户登录
主要文件:
完整代码
1 sql 在已有的数据库里创建user表,id,username,password三个字段
2 connect.php 数据库配置文件
<?php $server="localhost";//主机 $db_username="";//你的数据库用户名 $db_password="";//你的数据库密码 $con = mysql_connect($server,$db_username,$db_password);//链接数据库 if(!$con){ die("can't connect".mysql_error());//如果链接失败输出错误 } mysql_select_db('test',$con);//选择数据库(我的是test) ?>
3 signup.html 注册表单
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>用户注册页面</title> </head> <body> <form action="signup.php" method="post"> <p>用户名:<input type="text" name="name"></p> <p>密 码: <input type="text" name="password"></p> <p><input type="submit" name="submit" value="注册"></p> </form> </body> </html>
4 signup.php 注册程序
<?php header("Content-Type: text/html; charset=utf8"); if(!isset($_POST['submit'])){ exit("错误执行"); }//判断是否有submit操作 $name=$_POST['name'];//post获取表单里的name $password=$_POST['password'];//post获取表单里的password include('connect.php');//链接数据库 $q="insert into user(id,username,password) values (null,'$name','$password')";//向数据库插入表单传来的值的sql $reslut=mysql_query($q,$con);//执行sql if (!$reslut){ die('Error: ' . mysql_error());//如果sql执行失败输出错误 }else{ echo "注册成功";//成功输出注册成功 } mysql_close($con);//关闭数据库 ?>
注册流程完成,下面是用户登录
5 login.html 登录表单
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>登陆</title> </head> <body> <form name="login" action="login.php" method="post"> <p>用户名<input type=text name="name"></p> <p>密 码<input type=password name="password"></p> <p><input type="submit" name="submit" value="登录"></p> </form> </body> </html>
6 login.php 登录程序
<?PHP header("Content-Type: text/html; charset=utf8"); if(!isset($_POST["submit"])){ exit("错误执行"); }//检测是否有submit操作 include('connect.php');//链接数据库 $name = $_POST['name'];//post获得用户名表单值 $passowrd = $_POST['password'];//post获得用户密码单值 if ($name && $passowrd){//如果用户名和密码都不为空 $sql = "select * from user where username = '$name' and password='$passowrd'";//检测数据库是否有对应的username和password的sql $result = mysql_query($sql);//执行sql $rows=mysql_num_rows($result);//返回一个数值 if($rows){//0 false 1 true header("refresh:0;url=welcome.html");//如果成功跳转至welcome.html页面 exit; }else{ echo "用户名或密码错误"; echo " <script> setTimeout(function(){window.location.href='login.html';},1000); </script> ";//如果错误使用js 1秒后跳转到登录页面重试; } }else{//如果用户名或密码有空 echo "表单填写不完整"; echo " <script> setTimeout(function(){window.location.href='login.html';},1000); </script>"; //如果错误使用js 1秒后跳转到登录页面重试; } mysql_close();//关闭数据库 ?>
7 welcome.html 登录成功跳转页面
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>登陆成功</title> </head> <body> 欢迎光临 </body> </html>
至此一个简单的完整的注册登录系统完成,代码很简单没有考虑验证安全性健壮性,之后在进行完善。
希望本文所述对大家学习php程序设计有所帮助。

aphpdepentioncontiveContainerIsatoolThatManagesClassDeptions,增强codemodocultion,可验证性和Maintainability.itactsasaceCentralHubForeatingingIndections,因此reducingTightCightTightCoupOulplingIndeSingantInting。

选择DependencyInjection(DI)用于大型应用,ServiceLocator适合小型项目或原型。1)DI通过构造函数注入依赖,提高代码的测试性和模块化。2)ServiceLocator通过中心注册获取服务,方便但可能导致代码耦合度增加。

phpapplicationscanbeoptimizedForsPeedAndeffificeby:1)启用cacheInphp.ini,2)使用preparedStatatementSwithPdoforDatabasequesies,3)3)替换loopswitharray_filtaray_filteraray_maparray_mapfordataprocrocessing,4)conformentnginxasaseproxy,5)

phpemailvalidation invoLvesthreesteps:1)格式化进行regulareXpressecthemailFormat; 2)dnsvalidationtoshethedomainhasavalidmxrecord; 3)

tomakephpapplicationsfaster,关注台词:1)useopcodeCachingLikeLikeLikeLikeLikePachetoStorePreciledScompiledScriptbyTecode.2)MinimimiedAtabaseSqueriSegrieSqueriSegeriSybysequeryCachingandeffeftExting.3)Leveragephp7 leveragephp7 leveragephp7 leveragephpphp7功能forbettercodeefficy.4)

到ImprovephPapplicationspeed,关注台词:1)启用opcodeCachingwithapCutoredUcescriptexecutiontime.2)实现databasequerycachingusingpdotominiminimizedatabasehits.3)usehttp/2tomultiplexrequlexrequestsandredececonnection.4 limitsclection.4.4

依赖注入(DI)通过显式传递依赖关系,显着提升了PHP代码的可测试性。 1)DI解耦类与具体实现,使测试和维护更灵活。 2)三种类型中,构造函数注入明确表达依赖,保持状态一致。 3)使用DI容器管理复杂依赖,提升代码质量和开发效率。

databasequeryOptimizationinphpinvolVolVOLVESEVERSEVERSTRATEMIESOENHANCEPERANCE.1)SELECTONLYNLYNESSERSAYCOLUMNSTORMONTOUMTOUNSOUDSATATATATATATATATATATRANSFER.3)


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

Dreamweaver CS6
视觉化网页开发工具

Atom编辑器mac版下载
最流行的的开源编辑器