2011-11-03 91 views
0

我正嘗試將照片上傳到特定頁面,該頁面正在工作,但現在我想標記當前已認證的用戶,該照片中我剛上傳到頁面。標記上傳到Facebook頁面的照片中的用戶

這裏是我的代碼,

$result = $facebook->api('/PAGE_ID/photos', 'post', array(
     'source'  => '@pic.jpeg', 
     'message'  => 'Ninja of the month!!!', 
     'access_token' => 'PAGE_TOKEN', 
     'tags'   => array(array(
           'tag_uid'=> CURRENT_USERS_UID, 
           'x'  => 0, 
           'y'  => 0 
     )) 
)); 

,當我嘗試,我得到這個錯誤Fatal error: Uncaught OAuthException: (#322) Invalid photo tag subject thrown,我已經確定了頁面,用戶可以進行標記,而我有所需的權限,status_update,publish_stream,user_photos,offline_access,manage_pages

任何想法,爲什麼會發生這種情況,我該如何解決它?

+0

如果未捕獲的異常是你唯一的問題,那麼,試試把它放進''try'與catch''FacebookApiException'阻塞。 – abhinav

+0

這不會改變它不會標記任何用戶的事實。 – Odyss3us

回答

1

我想你可能需要使用不同的access_token(用戶的access_token)來更新標籤。

這樣的事情可能會奏效

$facebook->setFileUploadSupport(true); 
$args = array(
'access_token' => 'PAGE_TOKEN', 
'message' => 'MESSAGE', 
'image' => '@' . realpath($path_to_user), 
); 

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

$token = $facebook->getAccessToken(); 

$argstag = array('to' => 'USER_TO_TAG'); 
$argstag['x'] = 40; 
$argstag['y'] = 40; 
$argstag['access_token'] = $token; 
$datatag = $facebook->api('/' . $data['id'] . '/tags', 'post', $argstag); 
相關問題