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

 更新时间:2014年01月17日 15:39:59   作者:  
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\">";

相关文章

  • PHP使用互斥锁确保代码的线程安全的操作示例

    PHP使用互斥锁确保代码的线程安全的操作示例

    在多线程和高并发的环境下,我们经常会遇到需要确保代码段互斥执行的场景,比如,在电商平台中,当多个用户同时购买同一件商品时,如何确保库存的扣减是线程安全的,今天,我们将一起探讨这个问题,并介绍一个名为 wise-locksmith 的 PHP 互斥锁库
    2024-11-11
  • 比较discuz和ecshop的截取字符串函数php版

    比较discuz和ecshop的截取字符串函数php版

    网上看到一篇文章 discuz和ecshop截取字符串的两个函数,比较了一下两个版本的函数,都各有局限,只能在特定的前提下使用,但是学习一下有利于拓宽思路,了解PHP的扩展功能
    2012-09-09
  • PHP call_user_func和call_user_func_array函数的简单理解与应用分析

    PHP call_user_func和call_user_func_array函数的简单理解与应用分析

    这篇文章主要介绍了PHP call_user_func和call_user_func_array函数的简单理解与应用,结合实例形式分析了PHP call_user_func和call_user_func_array函数的基本功能、用法及操作注意事项,需要的朋友可以参考下
    2019-11-11
  • PHP实现LRU算法的原理详解

    PHP实现LRU算法的原理详解

    这篇文章主要为大家详细介绍了PHP实现LRU算法的原理,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-03-03
  • PHP 文件扩展名 获取函数

    PHP 文件扩展名 获取函数

    有时候我们需要获取文件的扩展名,分类文件等原因,下面是php的函数实例代码。
    2009-06-06
  • php笔记之:AOP的应用

    php笔记之:AOP的应用

    你以前听说过AOP(Aspect Oriented Programming)吗?虽然在php方面,好像没有过多的使用,但是在企业级开发中,AOP被广泛使用。我将借此文,向大家介绍PHP方面的AOP
    2013-04-04
  • PHP准确取得服务器IP地址的方法

    PHP准确取得服务器IP地址的方法

    这篇文章主要介绍了PHP准确取得服务器IP地址的方法,可实现跳过代理直接获取IP的功能,实例分析了php获取服务器IP地址的相关技巧,需要的朋友可以参考下
    2015-06-06
  • PHP二维数组实现去除重复项的方法【保留各个键值】

    PHP二维数组实现去除重复项的方法【保留各个键值】

    这篇文章主要介绍了PHP二维数组实现去除重复项的方法,结合实例形式分析了php保留各个键值的情况下去除重复项的相关操作技巧,需要的朋友可以参考下
    2017-12-12
  • PHP模块memcached使用指南

    PHP模块memcached使用指南

    这篇文章主要简单介绍了PHP模块memcached使用指南,需要的朋友可以参考下
    2014-12-12
  • 深入理解用mysql_fetch_row()以数组的形式返回查询结果

    深入理解用mysql_fetch_row()以数组的形式返回查询结果

    本篇文章是对使用mysql_fetch_row()以数组的形式返回查询结果进行了详细的分析介绍,需要的朋友参考下
    2013-06-06

最新评论