一个账号不能同时登陆 有几种方法判断

繁花似锦剩下青春忧伤 2010-07-12 10:47:12
如题,在线急等!
...全文
512 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
Valefish 2010-07-12
  • 打赏
  • 举报
回复
看看 点登陆吧 学习下
AWT_822 2010-07-12
  • 打赏
  • 举报
回复
记录到数据吧,登录改变状态,当退出时要再改变用户的状态。要是页面判断用全局变量太占内存了!本人不建议使用!
w79841446 2010-07-12
  • 打赏
  • 举报
回复
在SQL里添加一个state的字段吧.
用户登陆,state=1,用户注销或者直接关闭页面(包括session过期,直接ALT+F4关闭页面,死机等)就把state更改为2.
如果用户在次登陆时先获得他的state等于多少,如果是1就证明已存在.
当然,如何判断用户离开页面是件很麻烦的事情,试下在Global.asax里写下.
shine_fly 2010-07-12
  • 打赏
  • 举报
回复
个人想法:在用户登录的时候,获取电脑上的IP,CPU,MAC地址类的,然后登录完了把这个值插入到数据库表的字段里。再登录的时候去判断,如果有IP地址的话就不能登录。用户注销后把IP地址更新为空,执行下次登录检查。
enderboy520 2010-07-12
  • 打赏
  • 举报
回复
就這幾種了 樓主你得自己考慮用哪種 個人感覺用單例模式比較好
  • 打赏
  • 举报
回复
还有没有其他的解决办法。
xrongzhen 2010-07-12
  • 打赏
  • 举报
回复
Session中添加一项,记录已登录用户的ID 如果列表中存在,则此用户已登录
enderboy520 2010-07-12
  • 打赏
  • 举报
回复
http://www.iwms.net/n778c13.aspx
这个上面就有
作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。



单例模式有以下特点:

单例类只能有一个实例。

单例类必须自己创建自己的唯一实例。

单例类必须给所有其他对象提供这一实例。

一个典型的单例类的实现如下所示:其中构造子私有表示子类不能被继承。



public class Singleton

{

private static Singleton m_instance = null;



private Singleton()

{

}

public static Singleton getInstance()

{

if(m_instance==null)

{

m_instance=new Singleton();

}

return m_instance;

}

}



所谓多例模式,实际上就是单例模式的自然推广,单例类一般情况下只可以有一个实例,但单例类也可以推广到允许有限个实例,这种模式就是多例模式。作为对象的创建模式,多例模式有以下特点:

多例类可以有多个实例。

多例类必须自己创建、管理自己的实例,并向外界提供自己的实例。

多例类分为有上限多例类与无上限多例类。

一个有上限的多例类已经把实例的上限当作逻辑的一部分,并建造到了多例类的内部。如下:

public class Multiton

{

private static Multiton instance1=null;

private static Multiton instance2=null;



private Multiton()

{

}



public static Multiton getInstance(int whichOne)

{

if(whichOne==1)

{

if(instance1==null)

{

instance1=new Multiton ();

}

return instance1;

}

else

{

if(instance2==null)

{

instance2=new Multiton ();

}

return instance2;



}

}

}

多例类的实例数目不需要有上限,实例数目没有上限的多例模式就叫做无上限多例模式。由于没有上限的多例类对实例的数目是没有限制的,因此,虽然这种多例模式是单例模式的推广,但是这种多例类并不一定能够回到单例类。一般采用聚集管理所有的实例。
  • 打赏
  • 举报
回复
大家都给点意见么。回复人人有分
一切为了你 2010-07-12
  • 打赏
  • 举报
回复
这样想下 看看如何,如果用户登录成功了,就用Array数组 保存用户信息,
当他下线时 就删除该用户,如果他已经登录了,当他第二次登录时 从Array数组中
判断存在与否!!
另外用Ajax吧,不怎么熟悉 应该能实现LZ要求
  • 打赏
  • 举报
回复
怎么个用法。
enderboy520 2010-07-12
  • 打赏
  • 举报
回复
有一种设计模式叫单例模式
  • 打赏
  • 举报
回复
自己顶。。。
雨网科技 2010-07-12
  • 打赏
  • 举报
回复
不知道用什么合适,我想 还是用数据库 相对好点
  • 打赏
  • 举报
回复
我现在就想在页面上判断,各位高手有没有好的解决方案。
雨网科技 2010-07-12
  • 打赏
  • 举报
回复
在页面上定义一个全局的,又不好,数据量大了,占用内存太大了
雨网科技 2010-07-12
  • 打赏
  • 举报
回复
我觉得数据库 判断不准确
  • 打赏
  • 举报
回复
页面上可以判断不?
lijing3333 2010-07-12
  • 打赏
  • 举报
回复
定义表示符
加载更多回复(4)

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧