PHP中不同的Session ID


Different Session ID in PHP

我在mysql数据库中有两个用户,当一个用户登录时,它得到一个session id。但是当第一个用户注销时&第二个用户登录,它得到与第一个用户相同的session id。我想,即使浏览器没有关闭,但有多个登录&从同一个浏览器注销,session id应该为每个登录的用户更改。

使用以下代码:

 session_unset();
 session_destroy();

那么您需要显式地destroy会话或重新生成id。
我猜你现在只是把它挂在那里。

在注销按钮上使用session_destroy()

在注销脚本中调用session_destroy()

您也可以在登录脚本中调用它,如果新用户登录而旧用户退出。

来自文档:

session_destroy()销毁与当前表关联的所有数据会话。的关联的任何全局变量会话或取消会话cookie设置。使用会话变量同样,必须调用session_start()

为了彻底终止会话,比如注销用户会话id也必须取消设置。如果使用cookie来传播会话id(默认行为),那么会话cookie必须是删除。setcookie()可用于此。