php - CI_SESSION 查询所需的 ID 以查找事件用户

标签 php mysql codeigniter session

我的数据库中有 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'

最佳答案

您可以通过以下方式获取存储在 session 数据中的user_id $this->session->userdata('user_id');

如果你想从 ci_sessions 表中获取特定的 session ,那么你必须首先从 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();

编辑: 如果你想查询数据库中所有存储的 session 并在其中搜索特定的 user_id,你必须首先获取存储在表中的所有数据,反序列化 user_data并在其中搜索您要查找的 user_id

关于php - CI_SESSION 查询所需的 ID 以查找事件用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14981978/

相关文章:

mysql - 具体的mysql选择查询

php - 使用子查询和Having优化SQL

php - Codeigniter 表单验证集消息

php - 跟踪电子邮件并插入 MySQL 数据库

php - FilterAggregation无法正常工作

php - Eloquent 多态关系热切加载

PHP 页面未加载包含 SQL 语句

php - Doctrine 2 与连接表中附加列的多对多关系

mysql - 导入数据库,mysql触发器未运行

php - PDO 使用 OR 数组选择查询