我的数据库中有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'
。
您可以通过以下方式获取存储在会话数据中的user_id
$this->session->userdata('user_id');
如果你想从ci_sessions
表中获得一个特定的会话,那么你必须首先从userdata
中检索session_id
,然后才能查询它
$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
。