php - Facebook ID 登录和注册不一致

标签 php mysql facebook email facebook-graph-api

我一直在开发一个网站,该网站允许用户使用 Facebook 电子邮件进行注册,并使用他们的 Facebook 帐户进行注册。注册后,他们的电子邮件和 Facebook ID 将存储在我的数据库中。用户还可以使用电子邮件和密码通过我们的表格进行注册。用户可以更改他们的电子邮件地址,但这给 Facebook 登录带来了问题,因为如果 FB 用户更改了我网站上帐户的电子邮件,他们的 Facebook 将不再连接到他们的帐户。

我通过让 Facebook 登录使用 Facebook ID 而不是用户的电子邮件来解决这个问题,这样 Facebook 注册的用户就可以更改他们的电子邮件。然而,当我进行此更改时,某些 Facebook ID 不再起作用。一些尝试使用 facebook 登录的用户遇到错误,告诉他们他们的电子邮件已被使用,这意味着 facebook 帐户的 ID 和我数据库中的 ID 不匹配,因此我的网站的响应是尝试注册用户。

Facebook 是否会不时更改 ID 或 ID 格式?我检查了数据库和 facebook 给我的 ID,结果完全不同。

最佳答案

您可以找到解决此类问题的替代方法,

添加一个名为 alt_fb_email 的字段

在此处存储 Facebook 电子邮件。

所以登录条件匹配如下

如果表中的[更改的电子邮件(或条件)alt_fb_email]和[密码]相同,则登录

这适合你吗?

关于php - Facebook ID 登录和注册不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24710087/

相关文章:

php - 如果年份不同,则无法获取 "inbetween"记录

php - Openshift 502 代理错误和退出信号日志中的段错误 (11)

javascript - Facebook Facebook 页面插件无法在网页中运行

android - 如何使用 HitTestResult 检测 Android WebView 中的视频?

php - CakePHP 2.0 - 从某个结果集中获取具有特定参数的结果计数

php - 如何使用 codeigniter 从 mysql 中获取单个结果?

php - 如何在 SilverStripe 4 上编辑 Many_many_extraFields?

Mysql:查找具有最匹配起始字符的字符串

PHP MySQL 从临时列中获取数据

android - 新的 SDK 中没有请求publish_actions