www.adminn.cn
站长正能量分享网!

PHP登陆后跳转到登陆前页面实现思路及代码

AD:阿里云服务器企业会员更优惠 腾讯云香港,韩国免备案服务器1.8折优惠

最近手上一个小项目让我接触到PHP编程,简单的登陆功能已经OK。可是在实际使用的时候发现一个问题:用户A发送一个链接给用户B,B打开时页面提示登陆,可是登陆成功后,却跳转到了首页,而并不是A发送的链接。为了有更好的用户体验,B登陆成功后应该自动跳转到登陆前的链接。查了PHP帮助手册,利用$_SERVER全局变量可以实现这个功能。

$_SERVER是PHP的一个超全局变量,关于$_SERVER变量的详细解释可以参考:http://www.php.net/manual/zh/reserved.variables.server.php

具体实现方法为:在提示用户登录的同时,在session或者cookie中记录下请求页面的URL;登录验证成功后在跳转回该URL。

checklogin.php 代码如下:

  1. session_start();  
  2.  
  3. if (!isset ($_SESSION['login_ok']))  
  4. {  
  5. echo "<script language=javascript>alert ('要访问的页面需要先登录。');</script>";  
  6. $_SESSION['userurl'] = $_SERVER['REQUEST_URI'];  
  7. echo '<script language=javascript>window.location.href="login.php"</script>';  
  8. }  

login.php 代码如下:

session_start(); 

 

//此处省略了账号密码验证代码,验证OK再执行下面代码:

  1. if (isset ($_SESSION['userurl']))  
  2. {  
  3. //会话中有要跳转的页面  
  4. $url = $_SESSION['userurl'];  
  5. //phpfensi.com 
  6. else  
  7. {  
  8. //没有要跳转的页面,则转到首页  
  9. $url = "home.php";  
  10. }  
  11.  
  12. //0.5s后跳转  
  13. echo "<meta http-equiv=\"refresh\" content=\"0.5;url=$url\">";  

模板优惠价: (点击购买)
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《PHP登陆后跳转到登陆前页面实现思路及代码》
文章链接:https://www.adminn.cn/news/8509.html
本站资源模板仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。2021.5月起,网站调整,暂不再分享免费模板。谢谢理解

扫码支付后请联系右侧QQ发送下载地址!!

源码请勿用于任何涉灰站点!净化网络,站长更有责!

支付宝扫一扫打赏