在php中登录会话

时间:2017-09-16 07:08:16

标签: php session

我有一个代码,在10次不活动后为我提供session_timeout

<?php
function isLoginSessionExpired() {
    $login_session_duration = 10; 
    $current_time = time(); 
    if(isset($_SESSION['loggedin_time']) and isset($_SESSION["user_id"])){  
        if(((time() - $_SESSION['loggedin_time']) > $login_session_duration)){ 
            return true; 
        } 
    }
}
?>

帮助我编辑代码,以便即使在刷新页面之后session_timeout也能正常工作。

表示如果用户在5s之后刷新页面,那么它应该计算剩余时间,不应该0s开头。

1 个答案:

答案 0 :(得分:0)

将用户的首次访问时间设置为会话。然后检查差异,请尝试以下代码。

 function isLoginSessionExpired() {

    if(!isset($_SESSION['first_visit']))
    {
    $_SESSION['first_visit']=time();
    }else{
        $login_session_duration = 10; 
        $current_time = time(); 
        if(isset($_SESSION['loggedin_time']) and isset($_SESSION["user_id"])){  
            if(((time() - $_SESSION['first_visit']) > $login_session_duration)){ 
                return true; 
            } 
        }
    }
    }