facebook - FQL : search events from their venue field

标签 facebook events facebook-graph-api facebook-fql

我正在开发一个应用程序,通过 FQL 从 Facebook 页面检索事件。 有时,这些页面的所有者不会从页面配置文件创建这些事件,而是从他们自己的配置文件创建这些事件,并将事件链接到页面作为字段“地点”(因为我正在寻找的页面是公共(public)场所)

是否可以通过 FQL 或任何其他方式获取以特定 Facebook 页面 ID 作为地点的所有事件 ID?

现在,只有页面所有者使用以下代码通过页面配置文件插入事件,我才能获取所有事件:

$fql    =   "SELECT eid, creator, name, pic, timezone, start_time, end_time, location, description 
            FROM event WHERE eid IN ( SELECT eid FROM event_member WHERE uid IN  ($clubsstring) )
            AND start_time > $today
            AND start_time < $nextweek
            ORDER BY start_time asc";

$param  =   array(
    'method'    => 'fql.query',
    'query'     => $fql,
    'callback'  => ''
);

$fqlResult   =   $facebook->api($param);

谢谢 卢卡

最佳答案

嗯,您确实可以根据 field 进行搜索,但这只能是次要条件,因为 field 字段不可索引。

这意味着您首先必须根据 eid(Event 表中唯一可索引的字段)进行搜索,然后根据地点过滤这些结果。

问题是 field 字段是一个数组,并且其中的字段并不总是存在,例如一个事件可能将其作为 field :

"venue": {
    "id": VENUE_ID
}

但另一个会有:

"venue": {
    "street": "", 
    "city": "", 
    "state": "", 
    "country": ""
}

您应该能够通过以下方式获得您想要的东西:

SELECT eid, creator, name, pic, timezone, start_time, end_time, location, description 
FROM event
WHERE 
    ((eid IN (SELECT eid FROM event_member WHERE uid IN ($clubsstring)))
    OR
    (eid IN (SELECT eid FROM event_member WHERE uid IN (OWNERS_IDS_STRING)))
    AND
    venue.id IN (VENUE_IDS_STRING))
    AND start_time > $today
    AND start_time < $nextweek
    ORDER BY start_time asc;

我还没有测试过这个查询,您可能需要对其进行一些修改才能工作,您也可以使用 id 之外的不同 field 字段。

希望这有帮助。

关于facebook - FQL : search events from their venue field,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10812988/

相关文章:

swift - 从 facebook swift FBSDK 检索个人资料图片时出错

php - facebook验证码使用coldfusion出错

java - Spring 事件和服务重启

php - Facebook 开放图谱 : Issue between Old Facebook News Feed and New Facebook News Feed

php - FB Graph API 查询在 PHP SDK 中不起作用

javascript - Facebook JavaScript API - Chrome 中登录失败

facebook - 创建在社交网络上分享时每天更新的网页图像(如屏幕截图)

c# - 如何用相同的重复事件重构两个类?

android - Firebase 仪表板不显示价格值

iphone - Facebook 图形 API 出现 "Duplicate status message"错误