Codeigniter会话和重定向在IE7中不工作,但在IE8中工作



我使用codeigniter,并有一个简单的用户登录设置。用户提交他们的凭据,与DB检查它们是否有效,如果有效,则模型向控制器传递会话ID并重定向到用户页面。如果数据不正确,用户将被重定向到带有错误消息的登录页面。这里没什么特别的。问题是它不能在IE7中工作。我不确定是否因为重定向或会话创建。在除IE以外的所有浏览器中都可以正常工作。我在windows 7上测试了ie8,效果很好。奇怪的是,它不能在装有windows 7 IE7的电脑上运行。有人能告诉我为什么每次用户登录时登录页面都会刷新吗?我被告知尝试添加以下代码

$this->load->library('session');
        $this->load->model('login_model');
        $num_rows=$this->login_model->validate();
        if($num_rows == 1)
        {
            $data = array(          
            'is_logged_in' => true,         
            );
            $this->session->set_userdata($data);
            redirect('admin/show_admin_home');
        }
        else
        {
            $data['message']="चुकीचे युझर नेम अथवा पास वर्ड";
            $this->load->view('login',$data);
        }

登录模型代码:-

<?php
class Login_model extends CI_Model {

    function validate()
    {
        $username = $this->input->post('username');
        $password = $this->input->post('inputPassword');
        $this->db->select('*');     
        $this->db->where('login_username', $username);
        $this->db->where('login_password', $password);  
        $query = $this->db->get('login');
        return $query->num_rows;
    }
}
?>

在重定向中添加站点url:

redirect(site_url('admin/show_admin_home'));

更改配置

$config['sess_cookie_name'] = ' session';$config['sess_expiration'] = 84200;$config['sess_expire_on_close'] = FALSE;$config['sess_encrypt_cookie'] = FALSE;$config['sess_use_database'] = FALSE;$config['sess_table_name'] = ' session ';$config['sess_match_ip'] = FALSE;$config['sess_match_useragent'] = FALSE;$config['sess_time_to_update'] = 300;

相关内容

最新更新