如何在codeigniter中同步数据库和会话?

时间:2011-09-05 08:43:37

标签: php session codeigniter data-integrity

我遇到了一个问题,当用户登录时,我为用户分配了他们的ID,例如126.但是当我进行维护或删除一些被禁用的用户时,例如,用户ID 126将从数据库,但用户126在其会话中仍然具有数字126。当我检测到我的数据库有用户ID被删除时,如何“删除”他的会话内容?谢谢。

2 个答案:

答案 0 :(得分:0)

听起来我很担心ID 126被阻止,即使它被分配给新用户。

应该不是问题,导致这些情况下的ID(通常)以自动增量方式创建,而DB(肯定是MySQL,大多数其他人也可能)选择下一个更高的值到有史以来产生的最高值在这样一个自动增量字段中。

因此,如果高分配值为1234,则可以删除所需内容,下一个值为1235.

所以你的问题在我看来并不是一个问题。

答案 1 :(得分:0)

我可以想到两个解决方案,

1。)将用户凭据存储在数据库中, 每次用户进行操作时,您都可以检查凭据,如果已经被禁止,则将用户踢出。我不认为它

2。)缓存登录用户,缓存应该是全局的,以便可以检查被禁用户的会话