【问题标题】:CodeIgniter Sessions userdata issuesCodeIgniter 会话用户数据问题
【发布时间】:2014-04-26 03:24:50
【问题描述】:

CodeIgniter 会话存在真正的大问题。我无法获取任何用户数据,非常不寻常的事情,谁能帮助我?我不知道如何实现它,我没有得到会话。

代码如下:

class MY_Controller extends CI_Controller
{

    public function __construct()
    {
        parent::__construct();
        $this->load->model('admin_model');
    }

    public function do_login($username,$password)
    { 
        $right_login = $this->admin_model->get_username($username);
        $right_password = $this->admin_model->get_password($password);

        if( ! empty($right_login) &&  ! empty($right_password))
        {
            $session = array();
            $session['admin_logined'] = 'yes';
            $session['user_ip'] = $_SERVER['REMOTE_ADDR'];

            $this->session->set_userdata($session);

            redirect('admin/main');
        }
        else
        {
            redirect('admin');
        }   
    }

    public function do_logout()
    {  
        $session = array();
        $session['admin_logined'] = '';
        $session['user_ip'] = '';
        $this->session->unset_userdata($session);
        redirect('admin');
    }   

    public function check_admin()
    {    
        if(($this->session->userdata('admin_logined') === "yes"))
        {
            return TRUE;
        }
        else
        {
            redirect('admin');
        }
     }

 }

【问题讨论】:

  • 尝试了一切,但没有结果
  • 你加载了会话库吗? $this->load->library('session');
  • 当然是自动加载
  • 有错误信息吗?您是否在配置中设置了加密密钥?

标签: codeigniter session


【解决方案1】:

要让会话在 codeigniter 中工作,您必须将会话库加载到控制器构造函数中。

$this->load->library('session');了解更多详情Codeigniter session

【讨论】:

  • 手册我看过很多次,它是通过自动加载功能自动加载的
  • 您可以做的更多 1:为您的$config['base_url'] 设置一个值 2:从您的sess_cookie_name cookie_prefix 中删除所有下划线 确保正确设置了cookie_domain。 3:这可能意味着完全删除它
猜你喜欢
  • 1970-01-01
  • 2012-02-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多