要实现登录的唯一性验证比如 A 用户登录后,别人无法再用 A 用户重复登陆(或者通知第一次登陆用户并强行下线),该如何实现。
我的做法是准备用session来实现! 请问有什么好的方法解决此事???

解决方案 »

  1.   

    利用 Application 保存所有登录用户信息(usercode + verifycode),
    Session保存单个登录用户信息
    verifycode采用随机数
      

  2.   

    这个问题回答起来有点长
    首先用户表中加个字段,未登录时为0,登录了就把登录的IP存入
    当用户登录时把用户名存入session,再把这个字段更新为用户使用的机子IP
    当用户点退出或session失效时就把这个字希更新为0
    现在关键是怎么控制session失效,也就是用户关闭了浏览器或用户有段时间未操作时
    那么就要做个session监听器了,详细怎么做请参考这个地址
    http://community.csdn.net/Expert/topic/5267/5267215.xml?temp=.9871485
    里面有我的回答
    完成了这些用户就可以在别的机子登录时如果这个字段为0就直接登录,如果有IP则比较是否与本机IP相同,不相同则弹出是否强行登录的提示,如果强行登录则把IP存入这个字段,
    这样当在第一台机子上操作时就检查IP是否与这个字段的IP值是否一样,不一样就清除session,然后弹出别人使用了这个用户名登录是否强行登录的提示
    不过这样会大理增加系统负担,建议还是当有用户登录时别的机子就不能登录好了
      

  3.   

    不能用APPLICATION 会搞死人的
    liaohaiying(小菜) 的方法好