CodeIgniter按ID删除特定会话

时间:2013-05-12 12:34:59

标签: codeigniter session sessionid

需要删除特定用户的会话(当他被禁止时)。我知道session_id每5分钟重新生成一次。我们不是在数据库中存储会话,可能只是每个用户的session_id。我应该在每次session_id更改或更好的解决方案时更新数据库吗?

编辑:我认为,可能是将会话存储在数据库中并将my_session_id添加到每个会话中。然后我可以通过这个变量找到所需的会话。请注意这个解决方案,也许有些没有在数据库中存储会话?

1 个答案:

答案 0 :(得分:1)

好吧,我建议你尽可能将session_id存储在users表中,否则将session_ids与用户ID映射到一个单独的表中。

优点

  1. 当用户登录时检查有效会话ID和用户ID,如果发现是活动用户,则允许他重定向到登录页面。
  2. 登出时,您可以清除或销毁会话ID。
  3. 创建一个通用函数来验证用户和会话ID。
  4. 从帮助程序调用此常用函数,无论天气如何,如果其验证继续执行其他操作重定向到登录,则调用任何方法。
  5. 注意 - 我已经体验过这一点,因为我在网上酒店预订,每当你点击服务器获取当前酒店的可用性时,它用于返回实时价格,房间等的实时数据。这是存储的根据记录的用户会话ID,如果他注销,他的搜索将从db中删除。