要求一个会员账号不能同时2台机子登录使用,如何做到?
我用的是session

解决方案 »

  1.   

    单点登陆用户登陆成功,保存userID到session里根据session.ID判断是否在别处登陆
      

  2.   

    单点登录。设置登录标识
    ajax心跳
      

  3.   

    这是个问题,所以不推荐写数据库的方式进行用户互斥登录
    还是用Session比较好
      

  4.   

    就是 session记录在线状态  没安全退出 或意外退出   session照样结束
      

  5.   

    bs的话用session,cs的话用socket
      

  6.   

    1。直接搞个在线用户列表,登录后,将用户加入在线用户列表如果该用户还在其它位子登录,就判断他是否在在线用户列表中,在的话就不让他登录了2。捕捉下线,可以用AJAX定时更新在线列表中该用户最后在线时间,服务器端定时论询在线列表中的用户,如果
       发现某用户最后在线时间和当前时间间隔大于某个值(可以为服务器端定时轮询时间的两倍)则认为该用户下线,注销session,完成该用户下线的一系列操作。
      

  7.   

    其实最方便的就是数据库里做一个 flag 来判断用户在线状态但是这种的话 遇到用户意外掉线 (比如 断电)的情况 比较难办最好的 我认为是 用一个guid来做唯一值 结合 用户ID 做到  后登陆的 把 前登录的 挤下去懂了吧?
      

  8.   

    用Cache保存mac地址就可以了
    这样刷新页面的时候检查Cache里的mac地址是否和当前请求的mac地址相同
      

  9.   

    加一个sessionkey字段保存session值,把session值和sessionkey两个值进行比对