2011-06-07 54 views

回答

2

該API允許你上傳圖片到你的應用程序的現有相冊。只需發佈到https://graph.facebook.com/USER_ID/photos - 該照片將發佈到爲您的應用創建的相冊中。如果您的應用不存在,我們會自動爲您的應用創建一個相冊。所有以這種方式上傳的照片將被添加到同一張專輯中。

如果你想添加圖像到一個特定的相冊,你必須發佈到https://graph.facebook.com/ALBUM_ID/photos - 該照片將被髮布到一個特定的現有相冊,由ALBUM_ID代表。

詳細的使用指南是在這裏:https://developers.facebook.com/blog/post/498

0

首先要檢查,看看是否要創建相冊存在,否則Facebook將繼續生成具有相同名稱相同的專輯。

$album = $facebook->api($param); 
if (!$album) { 
    $album_details = array(
     'message'=> 'Your album description goes here', 
     'name'=> $albumName 
    ); 
    $create_album = $facebook->api('/me/albums', 'post', $album_details); 
    $album_uid = $create_album['id']; 
} else { 
    $album_uid = $album[0]['object_id']; 
} 

一旦你的相冊ID,您可以上傳您的照片,像這樣:

$photo_details = array(
    'message'=> 'Photo Description Goes Here', 
    'image'=> '@' . realpath($theUploadFile) 
); 

$upload_photo = $facebook->api('/'.$album_uid.'/photos', 'post', $photo_details); 

我寫有中許多人在這此功能的很好的教程。我的照片上傳功能內置了多選功能,並允許您同時上傳照片和視頻。您可以查看整個教程,請下載包:http://www.epixseo.com/index.php/facebook-php-3-3-1-and-javascript-sdk-graph-api-tutorial/

UPDATE

的$ PARAM變量包含的方法,在這種情況下是一個FQL查詢,而實際的FQL查詢......在這個例子,相冊查詢可能是這樣的:

$param = array(
    'method' => 'fql.query', 
    'query' => 'SELECT object_id FROM album WHERE owner="'.$user.'" AND name="'.$albumName. '"' 
); 
+0

歡迎來到堆棧溢出!發佈複製和粘貼樣板/逐字回答多個問題時要小心,這些問題往往會被社區標記爲「垃圾」。如果你這樣做,那麼它通常意味着問題是重複的,所以標記它們。 – Kev 2012-01-12 23:37:17

+0

難題會做,並會參考原始答案 – 2012-01-13 01:09:20

+2

什麼是'$ param'在你的代碼? – 2012-07-19 23:20:45