2011-11-18 80 views
3

我想標記我的facebook應用程序用戶在應用程序創建的照片。但它給我錯誤。PHP Facebook標記用戶在應用程序照片

$args = array(
    'message' => $fbme['name'].' will have a love marriage.', 
    'image' => '@' . realpath('./images/wall-e-and-eva1.jpg'), 
    'tags' => array(
        array(
         'tag_uid'=> $uid, 
         'x'  => 0, 
         'y'  => 0, 
        ) 
       ) 
); 

$data = $facebook->api('/'.$uid.'/photos', 'post', $args); 

其中

$uid =$facebook->getUser(); 

我收到以下錯誤。我不明白如何創建照片並將其上傳到用戶個人資料,但用戶名未被標記。

ERROR:- Fatal error: Uncaught OAuthException: (#121) Invalid photo id thrown in /home/a2611469/public_html/myweb/src/facebook.php on line 543

在此先感謝

+0

只是一個問題 - 你啓用了'$ setFileUploadSupport'到真正在你的Facebook的PHP SDK? – Lix

+0

@Lix我有{include_once「src/facebook.php」; $ app_id ='XXXXXXXXXXXXXX'; $ application_secret ='XXXXXXXXXXXXXXXXXXX'; $ Facebook的=新的Facebook(陣列( 'APPID'=> $ APP_ID, '文件上傳'=>真實, '祕密'=> $ application_secret, '餅乾'=>真,//啓用可選cookie支持 ));} fileupload = true在每個頁面上。這樣對嗎? –

+0

當你想要上傳圖片時,你必須設置該值。你可以上傳帶有標籤的圖片嗎? – Lix

回答

1

我想你應該POST照片標籤 「/ $ photo_id /標籤/ $ user_ID的」,而不是/ $ UID /照片是你的方式做到這一點。上傳實際照片後,您可能必須爲每個標記執行一次單獨的API請求。

http://developers.facebook.com/docs/reference/api/photo/

+0

在$ data api調用之後,我將這兩行添加到上面的代碼中。還是行不通。請幫忙。謝謝。 –

+4

將圖像發佈到Facebook而不使用「標籤」子陣列。檢查$ data ['id']以獲取上傳照片的ID。 然後標記的照片是這樣的: '$響應= $ facebook-> API( 「/ $ photo_id /標籤/ $爲person_id」, 'POST', 陣列( '×'=> $ x軸coord, 'y'=> $ y-coord, ) );' – Janek

+0

謝謝@ Janek幫助了我。爲你+1 –

相關問題