微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用PHP登录后重定向到上一页

假设我想导航到联系页面.但为了到达那里,该网站要求我登录.登录后,我应该被重定向到联系页面,但我在别的地方.我应该怎么做,我应该在登录重定向到我想要的页面

我有一个强烈的感觉,这与会议有关,但仍然.应该采取什么方法

你有三种一般方法

>将上一页存储在会话中;
>将页面存储为GET变量;要么
>对登录页面进行内部重定向.

(1)看起来像:

<?PHP
session_start();
if (!$_SESSION['userid']) {
  $_SESSION['page'] = '/contact';
  header('Location: /login');
  exit;
}
...
?>

成功登录后,可以检索$_SESSION [‘page’]并重定向.

(2)类似,除了没有会话变量.相反,你有:

header('Location: /login?return=/contact');

通过重定向登录页面必须将其作为隐藏的表单字段包含在页面上,向用户显示用户名和密码的请求.

(3)类似,但不会重定向到单独的页面.相反,每个页面都可能是一个登录页面.如果用户没有登录登录表单.网址仍然是“/ contact”.每个页面都将检测并处理登录尝试.

这种方法的优点是少一点外部重定向,它更容易处理提交的表单.这样我就意味着想像有人在你的一个页面填写一个表单,然后点击提交.系统看到他们的登录已经过期.如果您将用户重定向到新页面,然后重新导向,则可能需要重新输入所有表单字段.如果您隐含处理登录,您可以将所有表单字段作为隐藏输入,并将其登录无缝地视为原始页面的提交.

原文地址:https://www.jb51.cc/php/130415.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐