如果使用codegniter成功登录,如何重定向到url?

时间:2016-02-27 10:41:25

标签: php codeigniter model controller

启用enable_query_strings并希望在用户通过redirect()方法成功登录时重定向url。

Url看起来像这样:

http://localhost/DemoTest/index.php?c=admin_controller&m=login&d=backend

配置文件设置:

$config['uri_protocol'] = 'QUERY_STRING';
$config['allow_get_array'] = TRUE;
$config['enable_query_strings'] = TRUE;

admin_controller代码:

    function login() {
            $data['page_title'] = "Admin Login";
            if (isset($_POST['username'])) {
                $this->load->library('form_validation');
                $this->form_validation->set_rules('username', "Username", "trim|required");
                $this->form_validation->set_rules('password', "Password", "trim|required");
                if ($this->form_validation->run() == FALSE) {
                    $this->index();
                } else {
                    $result = $this->admin_model->check_login();
                    if ($result) {
                        $user_data = array(
                            'username' => $_POST['username'],
                            'login' => TRUE,
                        );
                        $this->session->set_userdata($user_data);
                        site_url('m=admin_controller&t=dashboard&s=backend');

     //Here i can call redirect() function to redirect this url 
http://localhost/DemoSite/index.php?c=admin_controller&m=dashboard&d=backend

                    } else {
                        $this->session->set_flashdata('login_failed', 'The login info you entered is invalid');
                    }
                }
            }
            $this->load->view('backend/templates/header_assets.php', $data);
            $this->load->view('backend/login');
        }

1 个答案:

答案 0 :(得分:0)

使用redirect()重定向成功完成登录的页面后,请参见以下示例:

redirect('Login', 'refresh');

您只需粘贴此行并将登录名替换为您的控制器名称和方法