PHP設置會話(Session)超時過期時間實現登錄時間限制[轉]


用戶登錄系統60分鍾后如果沒有操作就自動退出

第一種方法即設置php.ini配置文件,設置session.gc_maxlifetime和session.cookie_lifetime節點屬性值,當然也可以使用ini_set函數改變當前上下文環境的屬性值:

ini_set('session.gc_maxlifetime', "3600"); //
ini_set("session.cookie_lifetime","3600"); //

第二種方法即設置Session時間戳,比如下面的辦法。
在登錄成功時設置時間戳為當前時間推后1小時,$_SESSION['expiretime'] = time() + 3600;。在檢查用戶登錄情況使用如下代碼:

if(isset($_SESSION['expiretime'])) {
    if($_SESSION['expiretime'] < time()) {
        unset($_SESSION['expiretime']);
        header('Location: logout.php?TIMEOUT'); // 登出
        exit(0);
    } else {
        $_SESSION['expiretime'] = time() + 3600; // 刷新時間戳
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM