Login to the registration system is the most common operation on the Internet every day. I have set up a category to improve the registration and login system step by step. If Please forgive me if there is any mistake.
Language used: php
Database: mysql
The functions implemented this time:
1. User registration
2. User login
Main files:
Full code
1 sql creates a user table in an existing database, with three fields: id, username, and password
Copy code The code is as follows: create table user(id int(10) not null auto_increment,username varchar(30),password varchar(40),primary key(id) );
2 connect.php database configuration file
<?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 registration form
<!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 registration process
<?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);//关闭数据库 ?>
The registration process is completed, the following is the user login
5 login.html login form
<!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 login program
<?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 Login successful jump page
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>登陆成功</title> </head> <body> 欢迎光临 </body> </html>
At this point, a simple and complete registration and login system is completed. The code is very simple and does not consider verification security and robustness. It will be improved later.
I hope this article will help you learn PHP programming.