我这边是一个行业平台类网站,碰到一个奇怪的问题:一个会员用他自已的用户名和密码登录进去,显示的是另外一个会员的资料。退出,再重新登录,还是显示另外的同一个会员的资料。叫他删除本机的cookie后,重新登录,一切正常。过一段时间,又出现了这种情况。有四五次了。上次有问题时,显示的和原来不同的另外会员的资料。我是用PHP+mysql,用户名和密码递交用$_POST,密码用md5加密过。在把资料存入session之前,先用session_unset()清空所有session。真是百思不得其解,请教各位,有谁碰到过这种现象吗?谢谢!

解决方案 »

  1.   

    退出的时候为什么不清理cookie?
      

  2.   

    用session去跟踪用户的信息,看看什么时候变的
      

  3.   

    有可能是,那台机器不是他一个人用的,别人登录过,如果cookie没有失效,显示的是上一位用户。
      

  4.   


    绝对是这样的问题,以前公司里面的程序有问题,退出的时候未清除cookie就有这种现象
      

  5.   

    不可能是这种情况。出现问题的客户和显示的客户是在不同的城市地区,不可能用同一台电脑。
    他登录时,是输入用户名和密码的,重新从数据库中取的,而不是取原来的登录状态的。
    会不会客户登录时生成的PHPSESSID 和以前客户的PHPSESSID是相同的呢?
      

  6.   

    在本机上清除cookie后,用出错的用户名和密码,查出来是正确的。
    数据库里查出后,直接保存在session,别的地方没有这个操作。奇怪的是几年来,只有这一个客户报错,并且也是近期才报错,多次报错。客户的供应信息有几条是乱七八糟的,不是他本人发布的。会不会是客户电脑中木马或有病毒之类?
      

  7.   

    我也怀疑客户电脑有病毒。
    客户电脑cookie中怎么会有其他客户的登录信息?用于保存客户登录信息的session怎么会被cookie中的资料替换掉?有这样的病毒吗?
      

  8.   

    跟你的代码应该没有关系
    你的客户所在的域有问题,同一个域内一个用户a登陆没有退出,用户b登陆就是用户a的账号
    我的公司也存在这个问题