Database information and code
Database display:
sql execution:
CREATE TABLE `user` (
`id` int( 4) NOT NULL auto_increment,
`username` varchar(33) NOT NULL,
`password` varchar(33) NOT NULL,
PRIMARY KEY (`id` )
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
Required code files:
register.html:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <hr size="1"> <form action="add.php" method="post" > 用戶:<input type="text" name="username"/><br> 密碼:<input type="password" name="password" /><br> 確認(rèn)密碼:<input type="password" name="repassword" /><br> <input type="submit" name="register" value="注冊(cè)"> </form>
add.php:
<?php /** * Created by PhpStorm. * User: Administrator * Date: 2018/2/27 0027 * Time: 上午 11:06 */ header('Content-type:text/html;charset=utf-8'); if ($_SERVER['REQUEST_METHOD'] == 'POST') { if (empty($_POST['username'])){ echo "<script>alert('用戶名不能為空!');location.href='login.html';</script>"; }else { $username = $_POST['username']; } if (empty($_POST['password'])){ echo "<script>alert('密碼不能為空!');location.href='login.html';</script>"; }else{ $password = $_POST['password']; } if (empty($_POST['repassword'])){ echo "<script>alert('確認(rèn)密碼不能為空!');location.href='login.html';</script>"; }else{ $repassword = $_POST['repassword']; } if ($password != $repassword) { echo "<script>alert('兩次輸入密碼不一致!');location.href='login.html';</script>"; } } $mysqli = new mysqli('localhost', 'root', 'root', 'student'); $result = $mysqli->query("SELECT password FROM user WHERE username = "."'$username'"); $rs=$result->fetch_row(); if(!empty($rs)){ echo "<script>alert('用戶已存在!');location.href='login.html';</script>"; }else { $mysqli = new mysqli('localhost', 'root', 'root', 'student'); $sql = "INSERT INTO user (username,password) VALUES ('$_POST[username]', '$_POST[password]')"; $rs = $mysqli->query($sql); if (!$rs) { echo "<script>alert('注冊(cè)失??!');location.href='login.html';</script>"; } else { echo "<script>alert('注冊(cè)成功!返回登錄頁(yè)面');location.href='login.html';</script>"; } }
login. html:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <hr size="1"> <form action="success.php" method="post" > 用戶:<input type="text" name="username"/><br> 密碼:<input type="password" name="password" /><br> <input type="submit" name='login' value="登錄"> </form>
success.php:
<?php /** * Created by PhpStorm. * User: Administrator * Date: 2018/2/27 0027 * Time: 上午 10:47 */ header('Content-type:text/html;charset=utf-8'); if ($_SERVER['REQUEST_METHOD'] == 'POST') { if (empty($_POST['username'])){ echo "<script>alert('用戶名不能為空!');location.href='login.html';</script>"; }else { $username=$_POST['username']; } if (empty($_POST['password'])){ echo "<script>alert('密碼不能為空!');location.href='login.html';</script>"; }else{ $password=$_POST['password']; } } $mysqli = new mysqli('localhost', 'root', 'root', 'student'); $result = $mysqli->query("SELECT password FROM user WHERE username = "."'$username'"); $rs=$result->fetch_row(); if (!empty($rs)){ if ($password != $rs[0]) { echo "<script>alert('密碼錯(cuò)誤!');location.href='login.html';</script>"; }else{ $expire=3600; ini_set('session.gc_maxlifetime', $expire);//保存1小時(shí) if (empty($_COOKIE['PHPSESSID'])) { session_set_cookie_params($expire); session_start(); }else{ session_start(); setcookie('PHPSESSID', session_id(), time() + $expire); } if(isset($_SESSION['username'])){ exit("您已經(jīng)登入了,請(qǐng)不要重新登入!用戶名:{$_SESSION['username']}---<a href='logout.php'>注銷(xiāo)</a>"); }else{ $_SESSION['username']=$_POST['username']; } echo "<script>alert('登錄成功!');</script><br>"; echo "您好!{$_SESSION['username']},歡迎回來(lái)!"; echo "<a href='logout.php'>注銷(xiāo)</a>"; } }else{ echo "<script>alert('沒(méi)有此用戶!');location.href='login.html';</script>"; }
logout.php:
<?php /** * Created by PhpStorm. * User: Administrator * Date: 2018/2/27 0027 * Time: 上午 11:44 */ header('Content-type:text/html;charset=utf-8'); session_start(); if(isset($_SESSION['username'])){ session_unset($_SESSION['username']); session_destroy();//銷(xiāo)毀一個(gè)會(huì)話中的全部數(shù)據(jù) setcookie(session_name(),'');//銷(xiāo)毀與客戶端的聯(lián)系 echo "<script>alert('注銷(xiāo)成功!');location.href='login.html';</script>"; }else{ echo "<script>alert('注銷(xiāo)失?。?#39;);</script>"; }