您好,登錄后才能下訂單哦!
如何實現php登錄頁面跳轉?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
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登錄頁面跳轉的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。