Facebook:这个FQL声明出了什么问题?

时间:2011-02-08 10:48:23

标签: php facebook facebook-graph-api facebook-fql

我正试图通过facebook.php API获取一些关于我自己的数据(登录)。

这有效:

SELECT name FROM user WHERE sex='female' AND uid IN ( SELECT uid2 FROM friend WHERE uid1= me() )

这不起作用: [给出“异常:1:发生未知错误”]

SELECT eid, name, location, start_time, pic_big, host, description FROM event WHERE eid IN ( SELECT eid FROM event_member WHERE uid = me() )

我有以下权限设置:

App granted Perms

2 个答案:

答案 0 :(得分:1)

您的查询对我来说很好,很可能是一个权限问题。您会在Access my Profile information下看到小的“查看更多”链接?

点击它,如果您在列表中看不到Events,则需要user_events权限。

修改
请转到fql.query,在测试控制台粘贴查询并选择导致问题的应用程序...如果您得到了预期的结果,那么它与您的代码有关(您调用查询的方式) ,无论是PHP还是其他语言)。

如果您仍然遇到问题,请尝试授予create_event权限以进行测试。

答案 1 :(得分:0)

我不知道facebook api,但我首先要删除所有多余的东西

这有用吗?

SELECT `eid` FROM `event` 
WHERE `eid` IN 
( SELECT `eid` FROM `event_member` WHERE `uid` = me() )

甚至只是

SELECT `eid` FROM `event_member` WHERE `uid` = me()

如果它确实添加了更多内容并且不忘记反引号。

找出你可以使用的正确字段......

explain  `event` 

这给出了假设facebook使用mySQL的字段和类型列表

DC

嗯忽略关于反引号的评论并解释它们在FQL中没有使用 所以,只需尝试简化查询,直到错误发生,然后你知道是什么触发了它。

DC