1

我需要在一个组内显示所有 Facebook 事件。我知道组 ID 和创建者 ID,但我无法显示它们。

我总是在返回中得到 NULL 值,就好像它们不存在一样。我怎样才能让这个代码工作?

  • 该组是公开的
  • 即使用户未登录,我也想在外部页面上显示事件,以便每个访问者都能看到该组的事件。

代码:

facebook = new Facebook(
    array('appId' => $this -> params -> get('appid'), 
          'secret' => $this -> params -> get('secret'), 
          'cookie' => true, // enable optional cookie support
         )
    );

// Get the current access token
$access_token = $facebook->getAccessToken();

$fql = "SELECT name, pic, eid, start_time, end_time, location, description, update_time from event WHERE creator=XXXXXXXXXXX and eid IN ( SELECT eid FROM event_member WHERE uid = " . $this -> params -> get('idfbpage') . ")";    

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

返回空行,即使该创建者创建的所有事件都可以假设他们仅为该组创建事件。

4

1 回答 1

0

您是否尝试过使用 Graph API?

/[group-id]/events

我刚刚尝试过,它为我提供了一个组中的所有事件,我也得到了较旧的事件。您还可以轻松获取事件的所有者:

/[group-id]/events?fields=owner

您可以只使用应用访问令牌来执行此操作,该令牌的创建方式如下:

$access_token = FBAPPID . '|' . FBSECRET;

如果有 Graph API 的解决方案,你应该总是去寻求它。FQL 是一种痛苦。

于 2012-10-28T13:06:23.703 回答