在我的网站中,如果会话已过期或已注销,则必须重新登录才能进入会员区域。现在,例如,如果他们想要做这样的事情
http://example.com/site/approve_friend_request/RaNdOmCoDe
您只能完成批准朋友请求,例如,在成员区域内。但如果他们没有登录,则会将其重定向到(例如)
http://example.com/login_form
我想知道存储所请求的网址的一些想法是什么,并在他们成功登录后将其指向那里。我有一些想法,但不确定最佳方法是什么。理想情况下,我不想在网址中存储任何信息,除非这是一个好方法:
http://example.com/login_form/redirect_after_loggin/approve_friend_request/RaNdOmCoDe
提前致谢。
答案 0 :(得分:1)
好的伙计们,非常感谢你的帮助。我有一些选择,看起来最简单的是:
$this->session->set_userdata(array('last_url' => current_url()));
即使我没有登录并在登录后停留,它也会存储。一旦我重定向,我使用
删除它$this->session->unset_userdata('last_url');
答案 1 :(得分:0)
我会按照Facebook的方式给你,不论这是不是一个好方法,我会把它留给你。
假设您希望在登录后将用户重定向到 http://www.google.com 。
$redirect_url = json_encode('http://www.google.com');
header( 'Location: http://site.com/login_form?redirect_url=' . $redirect_url );
确保网址参数 redirect_url 在用户登录后传递到页面,检查是否设置了redirect_url,如果是:
$redirect_url = json_decode($_GET['redirect_url']);
header('Location: $redirect_url');