我的数据库中有ci_sessions
表,当用户登录时,他们的信息会保存在此表中。我想检查一下,如果我给出特定的user_id
,那么它会告诉我该用户是处于活动状态还是非活动状态。
我想查询CodeIgnter的活动记录格式,而不是基本的MySQL格式。
例如:
$this->db->select('*');
$this->db->from('ci_sessions');
$this->db->where('user_data','');
$this->db->get();
在我的ci_sessions
表格中,user_data
列包含所有信息,包括user_id。我想搜索此列where user_id = 'my_given_id'
。
答案 0 :(得分:1)
您可以获取存储在会话数据中的user_id
$this->session->userdata('user_id');
如果您想从ci_sessions
表中获取特定会话,则必须首先从session_id
检索userdata
,然后您可以查询它。
$session_id = $this->session->userdata('session_id');
$this->db->select('*');
$this->db->from('ci_sessions');
$this->db->where('session_id', $session_id );
$this->db->get();
修改强>
如果要查询数据库中所有存储的会话并在其中搜索特定的user_id
,则必须先获取存储在表中的所有数据,然后对user_data
进行反序列化并在其中搜索user_id
您正在寻找。