PHP Facebook Graph API: как разместить фотографию в фотоальбоме пользовательского приложения Facebook - PullRequest
0 голосов
/ 27 июля 2011

Я пытаюсь сделать приложение на Facebook.Из этого приложения пользователь должен иметь возможность загрузить фотографию или комментарий в альбом приложения.Я выполнил часть комментария, поэтому пользователь может публиковать комментарий из приложения на стене приложения.

Но я не могу поместить фотографию в фотоальбом приложения.Когда я загружаю какое-либо изображение, оно отправляется на пользовательскую стену.

Ниже приводится код, которым я пользуюсь.

$fb = new Facebook(array(
'appId'  => '2420527xxxxxxx',
'secret' => 'a6b14d618xxxxxxxxxxxxxxxxxxx'
));

$graph_url= "https://graph.facebook.com/".$fb->getAppId()."/photos?access_token=".$fb->getAccessToken();        

echo "
 <form enctype="multipart/form-data" action="'.$graph_url.'" method="post">
    <input name="source" type="file" /><br/>
    <input name="message" type="text" value="" /><br/>
    <input type="submit" value="Upload"/>
 </form>
 ";                 

Кто-нибудь здесь делал это раньше?Любая помощь будет признательна

1 Ответ

0 голосов
/ 27 июля 2011

Фотография не попадает на их стену, она на самом деле идет на новый альбом в их профиле, который был создан для вашего приложения.Посмотрите на их фотоальбомы, и вы должны увидеть это там.Facebook делает немного неопределенного волшебства, публикуя что-то на своей стене, когда новые фотографии загружаются в альбом.

Если вы предпочитаете, чтобы фотография попала в определенный альбом, вам нужно будет указать альбомID, что фотография должна идти.

// first get your album id, let's assume you need to create it
// create this before hand and you can just reference the id
$attachment = array('access_token'=> ACCESS_TOKEN, 'name'=>$ablum_name);
try{
    $album_resp = $facebook->api("/{$this->page_id}/albums", 'POST', $attachment);
}catch(Exception $e){
    throw new Exception("Failed to create album: ". $e->getMessage());
}
$album_id = $album_resp['id'];

$graph_url= "https://graph.facebook.com/". $album_id ."/photos?access_token=".$fb->getAccessToken();

// continue with your posting...
...