我不确定哪种方式最好,所以我很乐意听到一些想法。
好的,我们说我们有这个链接/ url => www.myscript.com/clients.php?id=5
如果我尝试打开它,我会被重定向到www.myscript.com/login.php
,因为我没有登录,然后当我登录时,我没有被重定向到原始链接/网址{{1}我希望如此。
那么我应该在login.php中添加什么才能实现这样的表演/工作?
答案 0 :(得分:4)
如果您没有登录,我会更改将您重定向到登录页面的代码。
不是重定向到login.php,而是执行此操作:
$myUrl = urlencode('http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']);
header("location:login.php?from=".$myUrl);
exit;
在登录页面上,将$_GET['from']
添加到隐藏的表单元素或其他内容。
验证登录后,重定向(首先记得urldecode()
!)。
答案 1 :(得分:3)
,在重定向到login.php之前,在会话变量中设置当前页面/ url。成功登录后,检查该关键字(我们从client.php设置)是否存在会话值,如果是,则检索该值并重定向到该页面。
答案 2 :(得分:0)
您可以使用Cookie,也可以使用GET。
使用GET的示例:
在clients.php中:
if (!loggedIn()) {
header("Location: www.website/login.php?redirect=".$_SERVER['REQUEST_URI']);
}
然后login.php可以通过重定向到$ _GET ['redirect']重定向回原始页面。
您也可以使用Cookie。在clients.php中,将url存储在cookie中,然后login.php可以读取cookie并重定向回原始URL。