当发现同名用户在线时,给用户名的数据中加上一条 ReLogin = true
并删除 登陆时间早些的用户(SESSION)信息。
建议用DB-SESSION

解决方案 »

  1.   

    用户名的数据? 指的是什么? 删除 登陆时间早些的用户(SESSION)信息这个用session_destroy 或是session_unregister 可以吗??DB-SESSION 是什么呢? 很多问题,请多赐教,万分感激!!!
      

  2.   

    在数据库里控制吧,就像楼上说的,不能单纯在SESSION里搞定。
    用户登陆后在数据库里给个已登陆标识,这样子如果有相同用户再次登陆的话就踢掉前面的用户。
    用户离开的时候要将已登陆标识辙掉,但是离开时有很多种情况,所以这些要有个时间来控制,比如限定五分钟没有动作当是离开。楼上的所谓DB-SESSION,应该和我想得差不多吧。
      

  3.   

    删除登陆时间早些的用户(SESSION)信息
      

  4.   

    DB-SESSION就是 数据库SESSION了。就是把SESSION存在数据库中。
      

  5.   

    请问“给用户名的数据”是指什么? 在哪里加呢?“删除 登陆时间早些的用户(SESSION)信息” 是用session_unregister 或session_destroy 吗?
    删除之后,重新记录新的用户的信息,对吗另外,DB-SESSION指什么呢? 这么多问题只能说感激了!
      

  6.   

    回复人: niule(niule) ( ) 信誉:99  2005-01-22 16:14:00  得分: 0  
     
     
       以为没有响应,又写了一次,呵呵如果有相同用户再次登陆的话就踢掉前面的用户这个操作的流程??比如一台机器里,一个用户登录了,然后在另一台机器里,同名的用户登录之后,发现已经有这个用户在线,这个时候怎么操作数据库才能将前面的用户踢掉呢? 只是在用户表加上一个是否已经登录的字段能实现吗?
      
     
    基本的思路就是你想的了,具体操作就要根据你的具体情况了。
    充分考虑一下用户非正常离开情况。