如何在登录后返回重定向页面(codeigniter)? [英] How to get back to the redirecting page after login (codeigniter)?

查看:377
本文介绍了如何在登录后返回重定向页面(codeigniter)?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的CI应用程式中有登入控制器:

I have login controller in my CI app:

function index()
{
    if($this->session->userdata('logged_in')==TRUE) 
        redirect('/success');

    $data['error']=$this->session->flashdata('errormessage');
    $this->load->view('auth',$data);
}

function process_login()
{

    $username=$this->input->post('username');
    $password=$this->input->post('password');

    if($password == "good_pwd")
    {
    $data=array('username'=>$username,'logged_in'=>TRUE);
    $this->session->set_userdata($data);
    redirect('/success');   
    }   
    else 
    {
        $this->session->set_flashdata('errormessage','Login failed');
        redirect('/failed');
    }
}

这是我在主控制器中的安全构造函数:

Thats my securing constructor in main controller:

function __construct()
{
    parent::__construct();
    if($this->session->userdata('logged_in')!=TRUE)  redirect('/login');
}

当我试图进入www.mysite.com/main/ function1 /我没有登录,然后构造函数将我重定向到登录页面 - 当我正确登录,我被重定向到主首页,而不是页面,将我重定向到登录页面(在这个示例中:www.mysite .com / main / function1 /) - 如何做?

When I'm trying to get into www.mysite.com/main/function1/ and I'm not logged in, then constructor redirects me into login page - when I log in correct I'm being redirected into main home page instead of page which redirected me into login page (in this example case: www.mysite.com/main/function1/ ) - how to do it?

推荐答案

会话,所以你可以返回到上一页,类似以下的行:

you'd need to store your request URI in a session for this, so you can return to the previous page, something along the lines of:

function __construct()
{
    parent::__construct();
    if($this->session->userdata('logged_in')!=TRUE) {
        $this->load->helper('url');
        $this->session->set_userdata('last_page', current_url());
        redirect('/login');
    }
}

...您可以使用会话数据重定向回

... you can then use session data to redirect back

这篇关于如何在登录后返回重定向页面(codeigniter)?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆