Voici le code qui fonctionne bien si je transmets /pageid/feed
a facebook->api
Mais lorsque je le modifie pour télécharger l'image directement dans mon album photo Facebook, cela ne fonctionne pas. Veuillez me dire ce que je fais de mal dans le code suivant :
// Works fine
$status = $facebook->api("/194458563914948/feed", 'post', $attachment);
// Does not work
$status = $facebook->api("/196878530339618/photos", 'post', $attachment);
Source complète
<?php
require 'src/facebook.php';
$app_id = "332267477347";
$app_secret = "xxxx";
$facebook = new Facebook(array(
'appId' => $app_id,
'secret' => $app_secret,
'cookie' => true,
'fileUpload' => true,
));
$facebook->setFileUploadSupport(true);
$user = $facebook->getUser();
//echo $user;
if(($facebook->getUser())==0)
{
header("Location:{$facebook->getLoginUrl(array('scope' => 'photo_upload,user_status,publish_stream,user_photos,manage_pages'))}");
exit;
}
else {
$accounts_list = $facebook->api('/me/accounts');
echo "i am connected";
}
$valid_files = array('image/jpeg', 'image/png', 'image/gif');
//to get the page access token to post as a page
foreach($accounts_list['data'] as $account){
if($account['id'] == 194458563914948){ // my page id =123456789
$access_token = $account['access_token'];
echo "<p>Page -- Access Token: $access_token</p>";
}
}
//posting to the page wall
if (isset($_FILES) && !empty($_FILES))
{
$aid = '421539304540205';
$folder = "pak/".$_FILES['pic']['name'];
$fold = 'http://snowdrop.com.pk/fb/'.$folder;
echo $fold."<br>";
if( move_uploaded_file($_FILES['pic']['tmp_name'], $folder) )
{
#Upload photo here
$img = realpath($_FILES["pic"]["tmp_name"]);
$attachment = array('message' => $_POST['textfield'],
'aid' => $aid,
'source' => '@' . $img,
'access_token' => $access_token,
);
$status = $facebook->api("/421539304540205/photos", 'post', $attachment);
echo $status;
var_dump($status);
}
else{
echo 'Only jpg, png and gif image types are supported!';
}
}
?>
<body>
<!-- Form for uploading the photo -->
<div class="main">
<p>Select a photo to upload on Facebook Fan Page</p>
<form method="post" action="" enctype="multipart/form-data">
<p>Select the image: <input type="file" name="pic" />
<br />
<label>Description
<input type="text" name="textfield" id="textfield" />
</label>
</p>
<p><input class="post_but" type="submit" value="Upload to my album" /></p>
</form>
</div>
</body>