2012-10-28 46 views
1

我需要顯示組內的所有Facebook事件。我知道組ID和創建者ID,但我無法顯示它們。使用fql api獲取組的事件

我總是在返回中獲得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); 

返回NULL線,甚至全部由創建者創建的事件將是美好的假設,他們創建活動僅適用於該組。

+0

需要用戶訪問令牌才能訪問此信息。我應該如何爲應用程序獲取訪問令牌給組本身?謝謝 – sharkyenergy

回答

0

您是否嘗試使用Graph API?

/[group-id]/events 

我只是試過了,它給我提供了所有來自一個組的事件,我也得到了舊的。您還可以得到事件的所有者容易:

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

你可以只用一個應用程序的訪問令牌,該令牌這樣創建做到這一點:

$access_token = FBAPPID . '|' . FBSECRET; 

如果用圖形解決方案API,你應該經常去做。 FQL是一個痛苦。

+0

感謝您的答案,但我怎麼才能建立一個頁面的圖形API的結果?該查詢返回一組值,我可以像使用普通的sql一樣調整低谷,但圖表api怎麼樣?它返回一個頁面(afaik)..謝謝你的幫助! – sharkyenergy

+0

圖api返回簡單的json,而不是頁面。看到這裏:https://developers.facebook.com/docs/reference/api/ – luschn

+0

我想知道你爲什麼用fql開始,如果你從來沒有觸及圖表api。通常情況下,你應該從圖api開始,並且只有當真的沒有很好的解決方案的時候... – luschn