사용자 로그인 후 세션 작업...로그인

사용자 로그인 후 세션 작업(만료 시간 설정)

사용자는 로그인하기 위해 사용자 이름과 비밀번호를 입력합니다. 비어 있으면 데이터베이스를 찾을 수 없거나 비밀번호가 잘못된 경우 돌아가서 다시 로그인하십시오.

로그인에 성공하면 다음이 표시됩니다:

微信图片_20180227161734.png

세션 만료 시간을 설정하고 다음으로 이동합니다.

微信图片_20180227162326.png

사용자가 이미 로그인한 경우 다음으로 이동합니다.

微信图片_20180227165129.png

코드는 다음과 같습니다:

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("您已经登入了,请不要重新登入!用户名:{$_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>";
}


다음 섹션
<?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("您已经登入了,请不要重新登入!用户名:{$_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>"; }
코스웨어