您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> php编程 >> 正文

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

作者:佚名    责任编辑:admin    更新时间:2022-06-22

 PHP登陆后跳转到登陆前页面,利用$_SERVER全局变量可以实现这个功能,下面有个不错的示例,希望对大家有所帮助

最近手上一个小项目让我接触到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  代码如下: 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">";