即使使用不同的浏览器会话,Php会话也会混合


Php session getting mixed even with different browser session

>我这里有个问题。我尝试登录一个帐户。然后打开另一个 chrome 会话而不是另一个标签,上一个会话将获取此会话值,并且所有内容都重置为当前帐户值。如何避免此问题?这就是我在登录页面中的做法。我的服务器是 Centos。

            $_SESSION['enterpriseID'] = $row1['enterpriseID'];
        $_SESSION['userID'] = $row1['userID'];
        $_SESSION['userName'] = $row1['userName'];
        $_SESSION['enterpriseName'] = $row1['enterpriseName'];
        $_SESSION['enterpriseID'] = $row1['enterpriseID'];
        $_SESSION['enterpriseLogo'] = $row1['enterpriseLogo'];
        $_SESSION['timeZoneOffset'] = $row1['timeZoneOffset'];
        $_SESSION['positionID'] = $row1['positionID'];

示例代码如下。

Update tblAST Set 
astStatus='m',".
employeeIDEnd=".$_SESSION['userID'].", ".
dateTimeEnd=now() ".
Where astID=".$astID;

chrome 的工作方式是会话在整个程序中有效,即使您打开一个新窗口,它仍然包含来自所有其他会话的信息。您可以使用GMail看到这一点,当您转到收件箱时,打开收件箱的每个窗口都会加载,

如上所述,请尝试使用无痕浏览或其他浏览器来测试多个会话。

正如我在下面的评论中提到的,您需要为每个会话分配一个名称,然后制作一个多暗数组来设置和检索信息。

$_SESSION['myapp']['用户名']
$_SESSION['myapp']['id']