我一直在开发一个网站,该网站允许用户使用 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/