php登入頁面跳轉的實作方法:首先在提示使用者登入的同時,在session或cookie中記錄下請求頁面的URL;然後在登入驗證成功後,跳回該URL即可。
PHP使用者登入後跳轉回上一造訪頁面的實作想法及程式碼
##項目需求
訪問網站頁面時,有的頁面需要授權才能訪問,這時候就會要求使用者登錄,跳到登入頁面login.php,怎麼實現登入後回到剛才造訪的頁面。 解決想法1:在跳到登入頁面之前要將目前存取頁面的url儲存到cookie裡面,登入驗證授權通過後,從cookie中取出這個url值,跳轉到該url指定的頁面。具體實作方法:
在提示使用者登入的同時,在session或cookie中記錄下請求頁面的URL;登入驗證成功後在跳轉回該URL。 checklogin.php程式碼如下:session_start(); if (!isset ($_SESSION['login_ok'])) { echo "<script language=javascript>alert ('要访问的页面需要先登录。');</script>"; $_SESSION['userurl'] = $_SERVER['REQUEST_URI']; echo '<script language=javascript>window.location.href="login.php"</script>'; }login.php程式碼如下:
session_start(); //此处省略了账号密码验证代码,验证OK再执行下面代码 if (isset ($_SESSION['userurl'])) { //会话中有要跳转的页面 $url = $_SESSION['userurl']; } else { //没有要跳转的页面,则转到首页 $url = "home.php"; } //0.5s后跳转 echo "<meta http-equiv="refresh" content="0.5;url=$url">";
解決思路2 :
除了存成cookie的形式,相信大家也看到了許多大型網站直接採用GET的形式取得,DZ的登陸機制就是這樣。 這個想法具體是這樣的:在跳到登入頁面前要將訪客造訪的頁面的url作為參數傳遞過去,登入驗證後,授予存取權限之後跳到到該url指定的頁面。 例如登入前的url為:http://www.xxx.com/member/authpage.html 當訪客造訪時,點選無權限,跳到登入頁面的位址就為login.php? redirect_url=http://www.xxx.com/member/authpage.html,這樣登入時就可以用GET方式取得此參數http://www.xxx.com/member/authpage.html,登入驗證成功後跳到authpage.html 這個頁面就可以了。 很多相關知識,請造訪PHP中文網!
以上是分享php登入頁面跳躍的實現思路的詳細內容。更多資訊請關注PHP中文網其他相關文章!