Session operations after user login (setting of expiration time)
Users enter their username and password to log in. If it is empty, the database is not found or the password is wrong, return and log in again.
After successful login, it will be displayed:
Set the session expiration time and jump to:
If the user is already logged in, jump to:
The code is as follows:
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=trim($_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('密碼錯誤!');location.href='login.html';</script>"; }else{ $expire=3600; ini_set('session.gc_maxlifetime', $expire);//保存1小時 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)登入了,請不要重新登入!用戶名:{$_SESSION['username']}---<a href='logout.php'>注銷</a>"); }else{ $_SESSION['username']=$_POST['username']; } echo "<script>alert('登錄成功!');</script><br>"; echo "您好!{$_SESSION['username']},歡迎回來!"; echo "<a href='logout.php'>注銷</a>"; } }else{ echo "<script>alert('沒有此用戶!');location.href='login.html';</script>"; }