加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2020-12-12 20:01:21 所属栏目:PHP教程 来源:网络整理
导读:最近手上一个小项目让我接触到PHP编程,简单的登陆功能已经OK。可是在实际使用的时候发现一个问题:用户A发送一个链接给用户B,B打开时页面提示登陆,可是登陆成功后,却跳转到了首页,而并不是A发送的链接。为了有更好的用户体验,B登陆成功后应该自动跳转

最近手上一个小项目让我接触到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
<div class="codetitle"><a style="CURSOR: pointer" data="78251" class="copybut" id="copybut78251" onclick="doCopy('code78251')"> 代码如下:<div class="codebody" id="code78251">
session_start(); if (!isset ($_SESSION['login_ok']))
{
echo "";
$_SESSION['userurl'] = $_SERVER['REQUEST_URI'];
echo '';
}

login.php
<div class="codetitle"><a style="CURSOR: pointer" data="69965" class="copybut" id="copybut69965" onclick="doCopy('code69965')"> 代码如下:<div class="codebody" id="code69965">
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">";

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读