Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/181.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP:我能';不允许用户在多个浏览器上登录站点_Php_Mysql_Session_Login - Fatal编程技术网

PHP:我能';不允许用户在多个浏览器上登录站点

PHP:我能';不允许用户在多个浏览器上登录站点,php,mysql,session,login,Php,Mysql,Session,Login,如果此问题已发布,请道歉。在搜索相关问题时,我没有找到我想要的答案 我刚刚创建了一个登录系统,可以与Facebook一起使用。一旦用户使用他们的Facebook信息登录,然后我在我的数据库中为他们创建个人资料。我在成功登录后启动会话,并将用户id存储在该会话中。到目前为止,这个设置工作得很好,但我最近注意到,如果我尝试在另一个浏览器(1xChrome、1xIE等)上登录该站点,同时它也不允许我登录。我如何解决这个问题?我希望用户不仅能够同时登录到同一台计算机上的多个浏览器,而且如果他们在家中登录

如果此问题已发布,请道歉。在搜索相关问题时,我没有找到我想要的答案

我刚刚创建了一个登录系统,可以与Facebook一起使用。一旦用户使用他们的Facebook信息登录,然后我在我的数据库中为他们创建个人资料。我在成功登录后启动会话,并将用户id存储在该会话中。到目前为止,这个设置工作得很好,但我最近注意到,如果我尝试在另一个浏览器(1xChrome、1xIE等)上登录该站点,同时它也不允许我登录。我如何解决这个问题?我希望用户不仅能够同时登录到同一台计算机上的多个浏览器,而且如果他们在家中登录,仍然能够从另一台计算机登录

非常感谢您的帮助

谢谢


编辑:是的,我对允许用户登录多个浏览器感兴趣,如1xChrome、1xIE、1xSafari等。我应该更清楚。抱歉。

您可能需要对Cookie做更多的研究

您的用户不能使用同一浏览器的多个实例(例如,4个Internet Explorer窗口)登录

您的用户应该能够使用不同的浏览器(即1 x ie、1 x Firefox、1 x Chrome或以上任何浏览器+1,启用了私人浏览/隐姓埋名/etc)

这是因为cookie存储不同。我认为,从技术上来说,你也可以使用不同的Firefox配置文件


。。。但是回到你的问题上来-你可能想了解更多关于Cookie及其在会话中的功能。

除非你自己检查并终止会话,否则不应终止会话。一个问题可能是facebook的实际登录。如果facebook不允许多次登录(我认为它不允许),您的第一个浏览器会话将获得一个过期会话(如果您检查facebook登录状态),这可能会导致您的脚本刷新第一个客户端的状态(如果您这样处理它的话)。

您是否使用用户id创建会话?如果是这样,那就敲响了警钟,但这可能不是问题的原因。我在数据库中存储了facebook id,但自动递增的主键id就是我使用的那个。我将执行一个session\u start(),然后创建一个$\u session['userid'],并将用户id存储在其中。不确定这是不是正确的方法,如果不是,请解释一下,因为我这么做只是因为我对它非常陌生。这似乎很好。我担心你用他们的id命名会话。比如
session\u name($id);会话_start()非常糟糕的主意。但将其存储在会话中似乎很好。facebook的oauth与谷歌的有那么大的不同吗?我知道我可以使用我的谷歌id登录stackoverflow上的多个不同浏览器