【发布时间】:2013-10-13 06:15:35
【问题描述】:
使用 php,我怎样才能做到这一点?例如:
1.) 假设共有 5 个页面(A、B、C、D、E)任何用户都可以查看(登录或退出)
2.) 用户 X 正在查看页面 (C) 并且未登录
3.) 用户 X 在页面 (C) 上登录并登录到他/她正在查看的同一页面 (C),而不是被重定向到主页
我知道如何在任何用户登录任何页面时将用户重定向到主页,但我不希望这样做,这是我的用户不想要的 - 我希望任何用户都可以这样做登录他们正在查看的任何页面,它会为他们保留在该页面上,而不是被重定向。
这是我让用户登录并被重定向的内容,但不知道如何让它能够让用户在登录时停留在用户正在查看的任何页面上。
PHP
header("Location: index.php");
为了让用户在登录时停留在他们正在查看的同一页面上,是否还需要做更多的事情?或者是否有一个简单的解决方案,我似乎无法仅使用上面的那一行代码找到?
我已经阅读了大量的教程/博客/论坛等...但在任何地方都找不到明确的答案。我确实遇到过“PHP_SELF”,但根本不知道如何实现它,而且 php.net 并没有明确的解决方案来解决如何使用它——(或者至少从我读到的)......任何帮助都会不胜感激。
已解决: --> 感谢 Thinkswan 的帮助
$current_url = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
header("Location: $current_url");
更新: --> 源于最初问题的问题
根据您在上面提供的正确格式,我们可以更进一步吗?例如:
应用与前面提到的相同的规则。
1.) 如果用户 X 当前未在页面 (C) 上登录,假设页面 (C) 的 URL 为 http://www.example.com/members.php,并且他/她点击了一个 div 容器在该页面上,会打开另一个更大的 div 容器。
2.) 其中的 URL 现在为 http://www.example.com/members.php#registered_members
3.) 虽然它是打开的,但用户 X 决定现在登录。有没有办法让它在用户 X 登录后保持在同一个页面上更大div容器打开了吗?截至目前,一旦用户 X 登录,div 容器就会崩溃,但在同一页面上登录。
【问题讨论】: