Maison  >  Article  >  développement back-end  >  php中登录后跳转回原来要访问的页面实例_PHP教程

php中登录后跳转回原来要访问的页面实例_PHP教程

WBOY
WBOYoriginal
2016-07-13 16:57:061424parcourir

在很多网站用户先访问一个要登录的页面,但当时没有登录后来登录了,等待用户登录成功之后肯定希望返回到上次访问的页面,下面我就来给大家介绍登录后跳转回原来要访问的页面实例

最简单的办法就是直接使用php $_SERVER['HTTP_REFERER']


如果我在A.php页面要登录


现在跳到B.php页面,我们只要在b.php中加如下代码

 代码如下 复制代码

$url = $_SERVER['HTTP_REFERER'];
header("location:$url");

但是上面的办法会有很多不足,如带参数等等,但在IE浏览器下的话,假如你是通过js的location来跳转的话,那这个值是获取不到的。

 下面我做一个全面点的。


首先创建一个方法判断是否登录,如果没登录则

 代码如下 复制代码

protected function checkLogin() {
       if (没有登录){          
       $thisurl = "http://".$_SERVER["HTTP_HOST"].$_SERVER['PHP_SELF'];//当前URL
       $thisurl = urlencode($thisurl);//这里要注意需要把获取到的url转码,不然后面不好传递URL
           redirect("http://".$_SERVER["HTTP_HOST"]."/cityosweb/default.php/Index/login?url=".$thisurl);           
       }
   }

然后在需要登录的才能反问的页面调用这个方法:

 代码如下 复制代码

$this->checkLogin();

这样如果你没有登录则跳转到登录页面。并带上了你之前页面的url:


然后获取URL提交登录:

 代码如下 复制代码

public function login() {
        $url = $_GET['url'];
        $this->assign('url',$url);
        $this->assign('title','Login');
        $this->display('user/reg_new.html');
    }

模板上获取到url后提交到php后台,登录后跳转到这个url ok搞定

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/631554.htmlTechArticle在很多网站用户先访问一个要登录的页面,但当时没有登录后来登录了,等待用户登录成功之后肯定希望返回到上次访问的页面,下面我就...
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn