2012-05-04 20 views
1

我正在嘗試使用PHP SDK製作fql multy查詢。這是我的代碼如何使用PHP SDK製作fql multyquery

try { 
    $fql = array( 
     "query1" => "SELECT uid2 FROM friend WHERE uid1 = me()", 
     "query2" => "SELECT name, url, pic FROM profile WHERE id IN (SELECT uid2 FROM #query1)" 
    ); 
    //$fql = "SELECT uid2 FROM friend WHERE uid1 = me()"; 
    // Proceed knowing you have a logged in user who's authenticated. 
    $user_profile = $facebook->api(array(
     'method' => 'fql.multiquery', 
     'query' => $fql, 
    )); 
} catch (FacebookApiException $e) { 
    error_log(print_r($e->getMessage(), true)); 
    $user = NULL; 
} 

而這總是會返回一個不帶消息

[04月 - 2012 20時22分26秒UTC] PHP公告:未定義的屬性: FacebookApiException :: $ getMessage in C:\ Program Files (x86)\ Zend \ Apache2 \ htdocs \ wordpress \ wp-content \ plugins \ all-in-one-event-calendar \ lib \ plugins \ A1ecFacebookConnectorPlugin.php on line 120 [04- May-2012 20:22:26 UTC]

我明顯做錯了什麼,可能是什麼?

+0

它看起來像錯誤異常處理程序中發生的,並沒有顯示什麼拋出異常的輸出。你可以在你的異常處理程序中嘗試'var_dump'ing'$ e'來查看吐出的內容嗎? –

回答

6

好吧,我發現如何做到這一點,你必須使用queries作爲參數,而不是query

try { 
    $fql = array( 
     "query1" => "SELECT uid2 FROM friend WHERE uid1 = me()", 
     "query2" => "SELECT name, url, pic FROM profile WHERE id IN (SELECT uid2 FROM #query1)" 
    ); 
    //$fql = "SELECT uid2 FROM friend WHERE uid1 = me()"; 
    // Proceed knowing you have a logged in user who's authenticated. 
    $user_profile = $facebook->api(array(
     'method' => 'fql.multiquery', 
     'queries' => $fql, 
    )); 
} catch (FacebookApiException $e) { 
    error_log(print_r($e->getMessage(), true)); 
    $user = NULL; 
} 
1

您的問題是您正在嘗試撥打$e->getMessage哪些不存在。你對線120碼應爲:

error_log(print_r($e, true)); 

如果您有與multiquery問題,你可以做到這一點作爲一個單一的查詢:

$fql = "SELECT name, url, pic FROM profile WHERE id IN 
     (SELECT uid2 FROM friend WHERE uid1 = me())"; 

$user_profile = $facebook->api(array(
    'method' => 'fql.query', 
    'query' => $fql, 
)); 

我已經能夠得到的查詢運行像這三個選擇很深。四個SELECT似乎太多了。

+0

我很笨,我只是沒有保存文件,我正在訪問的財產,而不是方法! :)無論如何,我找到了一個解決方案來做多查詢,我會發布它,謝謝你的幫助 –

相關問題