PHP 登录实现后如何跳转上一访问页面
发表于2019-05-16 22:28|
次阅读|
来源网络整理|
作者session
摘要:PHP 登录实现后如何跳转上一访问页面
PHP 登录实现后如何跳转上一访问页面
访问网站页面时,有的页面需求授权能力访问,这时分就会要求用户登录,跳转到登录页面login.php,怎样完成登录后前往到刚才访问的页面
名目须要
访问网站页面时,有的页面需求授权能力访问,这时分就会要求用户登录,跳转到登录页面login.php,怎样完成登录后前往到刚才访问的页面。
处理思绪1:
在跳转到登录页面之前要将以后访问页面的url保存到cookie里面,登录验证授权经过后,从cookie中取出这个url值,跳转到该url指定的页面。
详细完成
我如今的程序是基于ThinkPHP框架的,咱们会有一个父类控制器,下面我就把这个设置cookie的代码加到这个BaseAction里面的_initialize()函数中,这样程序就大大简化工作量了。
代码如下:
$refer = 'http://' . $_SERVER ['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
Cookie::set('refer', $refer);
登录检测的函数里面咱们退出:
代码如下:
$refer = Cookie::get('refer');
如今这个$refer就是咱们之前访问的页面,咱们可能经过AJAX前往这个参数,然后停止跳转,或许间接利用程序停止跳转,详细要依据你程序的须要了。
处理思绪2:
除了存成cookie的方式,相信大家也看到了很多大型网站间接采用GET的方式获得,Drupal的登陆机制就是这样。
这种思绪详细是这样的:
在跳转到登录页面前要将访客访问的页面的url作为参数传递过去,登录验证后,授予访问权限之后跳转到该url指定的页面。
比如登录前的url为:openphp.html 当访客访问时,点击无权限,跳转到登录页面的地址就为login.php?url=openphp.html,这样在登录时就可能用GET模式获取该参数 openphp.html,登录验证胜利后跳转到openphp.html 这个页面就可能了。
大致上我也就这两种思绪了,假设你有更好的思绪,真心宿愿你可能通知我。