vb做数据库系统,如何防止用户重复登录? 数据库中有某个表的flag字段,用户登陆后等于1,退出后等于0,问题是非正常退出的情况,例如网线断了,客户机死机了等等,即flag始终是1,导致无法再登陆!请问有好的方法吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 很简单,答案就在LZ的问题中.数据库中有某个表的flag字段,用户登陆后等于1,退出后等于0,问题是非正常退出的情况,例如网线断了,客户机死机了等等,即flag始终是1,导致无法再登陆!在客户端设置同样字段即可解决问题.先来看看我的故事...LZ想过WINDOWS怎么知道自己是异常关闭的吗?答:其实我也不知道,只是从这个得到了一点启示.记得几年前做三星DIY软件的时候曾经想过..如果自己的软件被异常关闭的问题,因为大量的数据运算而我算法不行,所以机器不行程序就挂...说多了....可以用简单的方法来知道程序异常关闭....我的方法是当程序开启后在程序目录下建立一个空文件,当退出时删除这个文件.而每次启动程序时首先在MAIN函数里判断文件是否存在,如果存在,说明是异常关闭.对于LZ来讲,做数据库,那你就在客户端多设置一个字段,当程序启动后,设置其为1,并保存之,结束前将其设置为0.这样一来,启动时检查它,为1时象服务器发出撤消以前登陆命令. 非常感谢 zcsor,你的方法很有帮助。我还想问一下,你(zcsor)说的“那你就在客户端多设置一个字段”,是指保存在客户机上吗?如果A客户机以用户USER1登陆-->意外退出,此时B客户机同样以用户USER1登陆,这样的话能否保证登陆上? 保存在客户.不能.想实现的话有很多办法..思路基本都是区分客户机,可以用IP,硬盘序列号,主版序列号等等带有标志性的....当然继续的操作要看你是否允许同帐户不同机器登陆了.如果是想一个用户死机后再在其他计算机上登陆,这时你可以向原登陆客户发送消息等待返回,如果超时则断开他(认为他异常退出)让新用户登陆并登记其IP等信息以备验证 Microsoft.XMLHTTP同步调用怎么设置超时时间?经常卡死啊? 如何将一个文件拖放到窗体的TEXTBOX中 高手指点:水晶报表问题!一运行就出错! 如何得到MDI窗口内的子窗口上控件的绝对坐标? 高分求助,窗体高宽最大值限制问题 高手请进,帮我提个思路~~ 也是一个简单的问题 分赠有缘 请问谁有SendMessage函数的详细资料(最好是中文的)。 来呀来呀来呀,VB6关于数组的程序困扰。 关于VB的MSC控件422串口回读数据的问题 怎样编程实现pdf的打印(要求兼容不同版本的adobe reader)
数据库中有某个表的flag字段,用户登陆后等于1,退出后等于0,问题是非正常退出的情况,例如网线断了,客户机死机了等等,即flag始终是1,导致无法再登陆!
在客户端设置同样字段即可解决问题.先来看看我的故事...LZ想过WINDOWS怎么知道自己是异常关闭的吗?答:其实我也不知道,只是从这个得到了一点启示.记得几年前做三星DIY软件的时候曾经想过..如果自己的软件被异常关闭的问题,因为大量的数据运算而我算法不行,所以机器不行程序就挂...说多了....可以用简单的方法来知道程序异常关闭....我的方法是当程序开启后在程序目录下建立一个空文件,当退出时删除这个文件.而每次启动程序时首先在MAIN函数里判断文件是否存在,如果存在,说明是异常关闭.对于LZ来讲,做数据库,那你就在客户端多设置一个字段,当程序启动后,设置其为1,并保存之,结束前将其设置为0.这样一来,启动时检查它,为1时象服务器发出撤消以前登陆命令.
我还想问一下,你(zcsor)说的“那你就在客户端多设置一个字段”,是指保存在客户机上吗?如果A客户机以用户USER1登陆-->意外退出,此时B客户机同样以用户USER1登陆,这样的话能否保证登陆上?
不能.想实现的话有很多办法..思路基本都是区分客户机,可以用IP,硬盘序列号,主版序列号等等带有标志性的....当然继续的操作要看你是否允许同帐户不同机器登陆了.如果是想一个用户死机后再在其他计算机上登陆,这时你可以向原登陆客户发送消息等待返回,如果超时则断开他(认为他异常退出)让新用户登陆并登记其IP等信息以备验证