Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/36.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_Authentication_Login_Oauth - Fatal编程技术网

Php 处理多个社交登录/注册系统

Php 处理多个社交登录/注册系统,php,authentication,login,oauth,Php,Authentication,Login,Oauth,首先让我澄清我没有问的问题。我不是问如何注册/登录自己。例如,我可以将OAuth与Twitter和FB结合使用来注册单个用户 现在我要问的是: 我有user表和socials表,用于保存用户注册。当用户试图向其社交网络注册时,我们也会为其“用户”表信息(如出生日期)提供一个表单,然后立即将其登录。到现在为止,一直都还不错!现在假设用户注销,这次不知何故使用Twitter登录。既然我不知道同一个用户已经注册了,我应该如何连接“用户”表数据 我可以使用电子邮件,但有些人在Facebook和Twitt

首先让我澄清我没有问的问题。我不是问如何注册/登录自己。例如,我可以将OAuth与Twitter和FB结合使用来注册单个用户

现在我要问的是: 我有user表和socials表,用于保存用户注册。当用户试图向其社交网络注册时,我们也会为其“用户”表信息(如出生日期)提供一个表单,然后立即将其登录。到现在为止,一直都还不错!现在假设用户注销,这次不知何故使用Twitter登录。既然我不知道同一个用户已经注册了,我应该如何连接“用户”表数据


我可以使用电子邮件,但有些人在Facebook和Twitter帐户上使用不同的电子邮件。在这种情况下,我将在“用户”表中有重复的配置文件。我知道我可以告诉用户登录并将他的社交帐户与他的twitter关联,或者创建新的个人资料。但是,我正在尝试检查是否有什么方法可以将用户Twitter档案与用户在使用facebook时填写的“用户”表中的相同数据关联起来。我会将所有登录数据保存在相同的
用户
表中。强制用户实际连接他们要登录的帐户。然后保存从每个服务获得的电子邮件,并将其保存到数据库中相应的服务列中


电子邮件是这些帐户唯一的共同点。我认为这是唯一的方法。

我使用单独的表来满足未来的社交登录。我可以将帐户与登录的用户关联起来。我试图解决的问题是在用户注销时这样做(如果可能的话),我认为这是不可能的,因为如果电子邮件不相同,那么许多帐户之间就没有唯一的标识符。在我看来,唯一的方法是在登录时强制用户连接帐户。或者冒险让用户有几封电子邮件,如果电子邮件不匹配,它就会创建一个新帐户。我明白了。我担心这可能是不可能的,这似乎是真的!