CodeIgniter-登录后如何将用户重定向到先前尝试的路由

M_Idrees

使用CodeIgniter框架,我在里面有一个管理页面AdminController,在它的构造函数中,我检查了用户是否未登录,然后重定向到登录页面。

LoginController成功登录后,我希望用户重定向到上一个管理页面。

从不同的例子,我尝试过:

$this->load->library('user_agent');
$this->session->set_userdata('redirect_back', $this->agent->referrer());

并且

$_SERVER['HTTP_REFERER']);

但是两者都给我返回了空字符串。

我该如何解决此问题。

卡洛·科卡克(Karlo Kokkak)

AdminController文件中,在重定向到之前LoginController,将当前网址保存到会话变量中:

$referrer_value = current_url().($_SERVER['QUERY_STRING']!=""?"?".$_SERVER['QUERY_STRING']:"");
$this->session->set_userdata('login_referrer', $referrer_value);
// redirect to login page

在您的LoginController成功登录中,检查会话'login_referrer'是否有价值。如果已重定向,则使用该值进行重定向。

if($this->session->userdata('login_referrer')!=""){
    $tmp_referrer = $this->session->userdata('login_referrer');
    $this->session->unset_userdata('login_referrer');
    redirect($tmp_referrer);
}

您可能需要调用以下命令来加载所需的库和帮助程序,以使上述代码成功运行。

$this->load->helper('url');
$this->load->library('session');

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

用户使用Ion Auth CodeIgniter登录后如何将用户重定向到另一个页面

Codeigniter登录系统,带有会话,如果密码正确,可将用户重定向到页面

登录/注册后如何将用户重定向到特定路由?

在Codeigniter中如何使用Ajax登录后重定向

登录后尝试将用户重定向到主页

填写登录表单后如何将用户重定向到/ creatPost?

Symfony-如何将用户重定向到登录后访问的上一页?

登录到codeigniter后在哪里放置重定向文件?

登录到首页之前的“规则”页面后,Codeigniter重定向

根据 codeigniter 中的用户角色重定向到页面

仅在成功登录(Flask Python App)后,如何将用户重定向到所需的html页面?

如何将用户重定向到登录屏幕,如果会话超时后收到ajax呼叫

使用devise在Rails 3中发送密码重置指令后,如何将用户重定向到登录页面

无法在Codeigniter中执行登录重定向

Codeigniter按钮重定向

重定向错误Codeigniter

注册后将用户重定向到登录页面

流星-登录后将用户重定向到/ dashboard

登录后将用户重定向到其他页面

登录后将用户重定向到aa页面

如果用户已经登录,如何将用户重定向到其主页?

提交表单后如何使用参数重定向到 PHP CodeIgniter 中的列表视图页面?

Codeigniter登录

用户登录成功后,如何通过路由器立即将用户重定向到新页面(密码,用户名正确)

在Codeigniter中重置密码后如何重定向

Codeigniter:弹出消息后无法重定向

登录后如何将用户重定向回所需的URL(php)

CodeIgniter - 如何使用会话重定向到非 WWW URL

如何在Codeigniter中将HTTP重定向到https