日期:2014-05-17  浏览次数:20426 次

新登录用户将原登录用户的数据信息替换掉的问题
1、用户登录时,存储用户信息:
$_SESSION['logName'] = $username;

2、根据用户信息查询用户邮件存储目录:
$home = $mysql->selectDirByName($username);

3、从目录中读取收发的邮件:
//邮件索引的xml文件名(xml中包括邮件的from、title、to、date、bodyId、attachId)
$inx = $home['home'] . "/" . $index . ".inx"; ($index为收件箱和发件箱的序号,如1、2)
//解析索引
$audit = parse_xml_config($inx, "mailindex");

4、根据解析的邮件信息罗列邮件。

大致流程就这样。
问题:在同一浏览器中登录两个用户,新登录的用户信息会将已登录的用户信息替换掉。我想是在第二步的时候将邮件存储目录给替换了,但我有在之前加unset($home)啊。请教还可能由哪些问题导致?若描述的不清楚请指教。

------解决方案--------------------
同个浏览器肯定是这样啊 你登录第2个的时候第一个就变成第2个了....

你要打开2个浏览器的话要是这样就神奇了。
------解决方案--------------------
$_SESSION['logName'] = $username;
==>
$_SESSION['logName'][] = $username;

再弄个 select 用于切换用户