0

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

这工作正常,并提示用户在输入用户名和密码后允许该应用程序。

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

但是,我的另外两个测试用户返回的 ID 号相同,这与 Facebook API 工具中显示的用户名的 ID 号不同。

因此,忽略有效的两个,我将与下面两个无效的问题讨论我的问题:

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

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

任何帮助都会很棒。

提前致谢。

4

2 回答 2

1

Facebook 使用 int64 作为 id,所以使用双精度就足够了。

于 2012-09-07T01:54:40.700 回答
0

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

ID 对于 mysql 中的 int 字段来说太长了,所以它放置了最大可能的 ID 号。

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

于 2012-09-06T20:54:02.510 回答