我正在使用PHP,我想知道用户是否登陆某个页面,他们必须登录或注册才能执行评论或评级等操作。我希望能够将用户带回来登录后到同一页面。
我正在考虑使用PHP get
函数并传递URL,我不确定这是最好的方法。
答案 0 :(得分:3)
据推测,您的登录字段是html格式。在构建表单时,将当前URI放在隐藏的输入字段中,然后在POST数据提交后要执行重定向时,可以获得可用的信息。
我通常不使用没有框架的PHP,但是这里有一些资源可以帮助您获取这些信息:
http://www.webcheatsheet.com/PHP/get_current_page_url.php
How can I get the current page's full URL on a Windows/IIS server?
基本上,它是这样的:
$current_url = "http://" .$_SERVER['HTTP_HOST'] .$_SERVER['REQUEST_URI'];
但是如果您使用https
,则必须相应地更改该字符串。
答案 1 :(得分:2)
另一种方法是将它们重定向回$_SERVER['HTTP_REFERER']
。需要考虑的一件事是浏览器可以选择不发送Referer URL。
答案 2 :(得分:1)
我可能有点太晚了但是......
$home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . 'index.php';
我也忘了你会把它放在后面,这实际上会带你回到主页
header('Location: ' . $home_url);