一个判断PHP程序是否被同时在不同浏览器上执行的问题
如何验证才能保证在同一时间,一台电脑一个用户只能运行一个该程序,而不会受到浏览器的影响。
就比如网页游戏的登录,同一浏览器不能同时登录多个账号,但是开3个不同浏览器就能同时登录3个账号。
如何验证才能防止这种“多开”的情况?
回复讨论(解决方案)
这个可以写进内存或数据库判断用户是否已经登录,然后每次登录前再去判断登录状态,这样不就解决了躲开的情况吗?不知鄙人说的是否这个意思
可以写入数据库进行判断。
mac+ ip 验证怎么样?
这个可以写进内存或数据库判断用户是否已经登录,然后每次登录前再去判断登录状态,这样不就解决了躲开的情况吗?不知鄙人说的是否这个意思
这个确实可以防止同一用户的“多开”情况,但是我想要的是只能有一个用户登录,也就是,即便是3个不同的用户名也不行
mac+ ip 验证怎么样?
这个也许可行,不过实际中有这样的项目吗?
http://www.baidu.com/baidu?word=js%E8%8E%B7%E5%8F%96mac%E5%9C%B0%E5%9D%80&ie=utf-8
http://www.baidu.com/baidu?word=js%E8%8E%B7%E5%8F%96mac%E5%9C%B0%E5%9D%80&ie=utf-8
惭愧,谢谢版主老大
有帐号就好办了,后一个登录杀掉前一个,记录最新一个session id就行
有帐号就好办了,后一个登录杀掉前一个,记录最新一个session id就行
那我怎么知道哪个账号对应着哪一个账号呢,我只是防止一个用户多个账号同时登录,而不是这个程序只能一个用户而且一个账号登录
http://www.baidu.com/baidu?word=js%E8%8E%B7%E5%8F%96mac%E5%9C%B0%E5%9D%80&ie=utf-8
版主老大,貌似这个需要用户点击信任允许才行啊,有没有直接可以做到的
获取用户信息,当然是要用户允许的。不然你也打算制造仪的“棱镜”事件?
有帐号就好办了,后一个登录杀掉前一个,记录最新一个session id就行
那我怎么知道哪个账号对应着哪一个账号呢,我只是防止一个用户多个账号同时登录,而不是这个程序只能一个用户而且一个账号登录
很晕,怎么会不知道呢?登录时不判断不记录帐号的么?难道就一个True/False?
我得提醒一下: mac地址是可以伪造的...
有帐号就好办了,后一个登录杀掉前一个,记录最新一个session id就行
那我怎么知道哪个账号对应着哪一个账号呢,我只是防止一个用户多个账号同时登录,而不是这个程序只能一个用户而且一个账号登录
很晕,怎么会不知道呢?登录时不判断不记录帐号的么?难道就一个True/False?
我的目的是想防止“一个用户多开”的情况,所以我要确定的是,这个用户只能同时使用一个账号,如果他注册了三个账号,用三个不同浏览器登陆,那么服务器针对每个账号来看确实没问题,但是这三个账号都是同一个用户同一时间登陆的,我现在要确定这个用户只能使用其中一个
获取用户信息,当然是要用户允许的。不然你也打算制造仪的“棱镜”事件?
那有没有能用户本身就提供,又可以确定唯一性的信息呢
我得提醒一下: mac地址是可以伪造的...
妞妞,那有没有什么办法能确定到唯一用户呢
你账号哪里做一个验证就行了,SESSION是每访问一次有一个唯一ID的,换浏览器就肯定换新的了
你账号哪里做一个验证就行了,SESSION是每访问一次有一个唯一ID的,换浏览器就肯定换新的了
我现在是要想办法确定用户唯一,不是账号唯一,换了新SESSION那我还怎么确定他之前是不是登录过了
我得提醒一下: mac地址是可以伪造的...
妞妞,那有没有什么办法能确定到唯一用户呢
除非你抛弃所有的浏览器做为客户端,自己开发一个专门的客户端用来访问,否则是没有办法的。