登录注册系统是日常上网最普通的操作,我设了一个分类一步步完善注册登录系统,若哪里有误,请见谅。
所用语言:php
数据库 :mysql
本次实现功能:
1.用户注册
2.用户登录
主要文件:
完整代码
1 sql 在已有的数据库里创建user表,id,username,password三个字段
2 connect.php 数据库配置文件
1
2
3
4
5
6
7
8
9
10
11
12
|
<?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 注册表单
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<!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 注册程序
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
<?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 登录表单
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<!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 登录程序
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
<?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 登录成功跳转页面
1
2
3
4
5
6
7
8
9
10
|
<!doctype html> <html lang= "en" > <head> <meta charset= "utf-8" > <title>登陆成功</title> </head> <body> 欢迎光临 </body> </html> |
至此一个简单的完整的注册登录系统完成,代码很简单没有考虑验证安全性健壮性,之后在进行完善。
希望本文所述对大家学习php程序设计有所帮助。