您好,登錄后才能下訂單哦!
php登錄超時session的解決方法?這個問題可能是我們日常學習或工作經常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家帶來的參考內容,讓我們一起來看看吧!
php登錄超時session的解決辦法:首先登錄時候用session記錄登錄時間;然后頁面打開時候判斷session如果不存在,就跳回登錄頁面;接著如果session存在,則將頁面加載時間和登錄時間對比;最后如果大于超時時間,則刪除即可。
php登錄超時session的解決辦法:
php登錄超時session問題,原理是:
1、登錄時候用session記錄登錄時間
$_SESSION['time']=time();
2、頁面打開時候判斷session如果不存在,就跳回登錄頁面;如果session存在,則將頁面加載時間和登錄時間對比,如果大于超時時間,則刪除session,如果時間小于超時時間,則更新登錄時間session值!
登錄代碼:
public function login(){ if($_POST){ $where['username']=$_POST['username']; $where['password']=md5("php100".$_POST['password']); $users=M('users')->where($where)->find(); if($users){ $_SESSION['id']=$users['id']; $_SESSION['user_shell']=md5($users['username'].$users['password']); $_SESSION['time']=time(); $this->redirect('Index/index'); }else{ echo "<script type='text/javascript'>alert('用戶名或密碼錯誤');window.history.go(-1);</script>"; } }else{ $this->display(); } }
公共控制器構造函數代碼:
public function _initialize() { if(isset($_SESSION['user_shell'])){ if(time()-$_SESSION['time']>60){ unset($_SESSION['user_shell']); $url=U('Login/login'); Header("Location:$url"); }else{ $_SESSION['time']=time(); } }else{ $url=U('Login/login'); Header("Location:$url"); } }
感謝各位的閱讀!看完上述內容,你們對php登錄超時session的解決方法大概了解了嗎?希望文章內容對大家有所幫助。如果想了解更多相關文章內容,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。