Facebook ID号与api不同

时间:2012-09-06 20:49:13

标签: sql facebook api login

我正在使用Facebook应用程序允许用户登录我的网站。

此工作正常,它会提示用户在输入用户名和密码后允许该应用。

作为登录的一部分,我将一些用户信息提交到数据库,以便在我的网站上为他们创建个人资料。这适用于我的4个测试用户中的2个,并且正确的信息将保存到数据库(名称,电子邮件,ID,等等)。

然而,我的另外两个测试用户获得了相同的ID号,这与用户名在Facebook API工具中显示的ID号不同。

所以忽略那两个工作,我将讨论我的问题与下面不起作用的两个:

如果我从我的数据库中删除所有条目并使用account3登录,则会使用正确的用户名,电子邮件地址,名称等将其添加到数据库中。但是,其ID与facebook API工具中显示的ID不同。如果我使用Account4登录,我会收到一条错误,指出ID号有重复的ID这就是我暂时设计代码所以我可以调试这个问题。如果我删除了account3的条目并使用account4登录,那么它会使用正确的名称,电子邮件地址,用户名等保存到数据库,但ID号仍然是错误的。

为什么这对4个帐户中的2个有效?当所有用户ID都应该是唯一的时,为什么我会收到重复的ID错误?

任何帮助都会很棒。

提前致谢。

2 个答案:

答案 0 :(得分:1)

Facebook使用int64作为id,所以使用double就足够了。

答案 1 :(得分:0)

经过一段时间的研究,我终于找到了解决方案。

对于mysql中的int字段,ID太长,因此它会放置尽可能大的ID号。

我已将ID字段更改为varchar(500),我的问题已解决。