PHP登录完成跳转上一访问页面的方法:1、在跳转到登录页面之前要将当前访问页面的url保存到cookie里面,登录验证授权通过后,从cookie中取出这个url值;2、在跳转到登录页面前,要将访客访问的页面的url作为参数传递过去。
PHPT & g )登录完成跳转上一访问页面的方法:
解决思路1:
在跳转到登录页面之前要将当前访问页面的url保存到cookie里面,登录验证授权通过后,从cookie中取: V f * @ Y N s出这个url值,跳转到该url指定的页面。
具体实现
基于ThinkPHP框架,会有一个父类控制器。
把这个设f S A & ` b置cookie的代码加到这个BaseAction里面的_initial$ , $ize()
函数中。
代码:
代码示例:t h I ] - q
$refer = 'http://' . $_SERVER ['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
Co2 Z $okie::set('refer', $refer);
登录检d z : M { + 0 N测的函数中加入:
代码示例:
$refer = CookiA h F . Me::get(q $ C : m'refer');
现在这个$refer
就是之前访问的页面,可以通过AJAX返回这个参数,然后进行跳转,或直接使用程序进行跳转。
解决思路2:
除了存成cookie的形式,很多大型网站直Z ^ k接采用GET的形式获得,Drupal的登陆机制就是这样。
实现思路:
在跳转到登录页面前,要将访客访问的页面的url作为参数传递过去,登录验证后,授予访问权限之后跳转到该url指定的页面。
比如登录前的url为:openphp.html
当访客访问时,点击? w * l 6 H S无权限,跳转到登录页面的地址就为login.php?url=openphp.html
,这样q U %在登录时就可以用GET方式获取该参数 openG # _ ? B cphp.html,登录验证成功后跳转到openphp.html 这个页面就可以了。
【相关学习推荐:php图文教程】
以上就是s q nPHP如何登录完成跳转上一访问页面的详细内容。