Php FacebookAPI在/feed中运行良好,但在/photos中不起作用
如果我将/pageid/feed传递到facebook->api,下面的代码可以正常工作,但是当我将其更改为将图像直接上传到我的facebook相册时,它将不起作用。请让我知道我在以下代码中做错了什么:Php FacebookAPI在/feed中运行良好,但在/photos中不起作用,php,facebook,facebook-graph-api,facebook-php-sdk,Php,Facebook,Facebook Graph Api,Facebook Php Sdk,如果我将/pageid/feed传递到facebook->api,下面的代码可以正常工作,但是当我将其更改为将图像直接上传到我的facebook相册时,它将不起作用。请让我知道我在以下代码中做错了什么: // Works fine $status = $facebook->api("/194458563914948/feed", 'post', $attachment); // Does not work $status = $facebook->api("/19687853033
// Works fine
$status = $facebook->api("/194458563914948/feed", 'post', $attachment);
// Does not work
$status = $facebook->api("/196878530339618/photos", 'post', $attachment);
全源
您使用的路径/406221796071956/photos是错误的,这就是它不起作用的原因
这条路径错误的原因是,406221796071956是图片的id,请自己查看,上面说:
类型:照片
如果要发布到该相册,请使用/196878530339618/photos,因为它是相册:
类型:相册
编辑
有关将照片添加到相册的信息,请参阅
第二版
根据以下文件:
你能上传吗
确定UID是否可以上载到相册,并在用户拥有相册、相册未满以及
该应用程序可以将照片添加到相册中
因此,您需要相册不满,成为相册的所有者并拥有正确的上载权限。您使用的路径/406221796071956/photos是错误的,这就是它无法工作的原因
这条路径错误的原因是,406221796071956是图片的id,请自己查看,上面说:
类型:照片
如果要发布到该相册,请使用/196878530339618/photos,因为它是相册:
类型:相册
编辑
有关将照片添加到相册的信息,请参阅
第二版
根据以下文件:
你能上传吗
确定UID是否可以上载到相册,并在用户拥有相册、相册未满以及
该应用程序可以将照片添加到相册中
因此,您需要相册不满,成为相册的所有者,并拥有正确的上载权限。我使用此功能是因为您使用我的代码检查了一个问题,但它仍然不起作用:------------$status=$facebook->api/196878530339618/照片,$post',$attachment;你能说得更具体些吗?不工作到底意味着什么?你收到错误消息了吗?我所要做的就是使用上面的脚本,当我点击submit时,图像会显示在我的墙上,并带有它的描述,并且该图像可以在facebook fanpage上放大,因为当我使用/pageid/feed时,通知确实会出现在墙上,但带有非常小的图标图像,后面有任何链接无法在放大视图中查看…不,我没有收到错误消息这里是我的页面链接的链接,替换了ALBUMID:此链接包含代码行,带有/pageid/feed,工作正常,但有一个小的linky图像问题,我根据您用我的代码检查的问题使用了此链接,但仍然不起作用:---------------$status=$facebook->api/196878530339618/照片,$post',$attachment;你能说得更具体些吗?不工作到底意味着什么?你收到错误消息了吗?我所要做的就是使用上面的脚本,当我点击submit时,图像会显示在我的墙上,并带有它的描述,并且该图像可以在facebook fanpage上放大,因为当我使用/pageid/feed时,通知确实会出现在墙上,但带有非常小的图标图像,后面有任何链接无法在缩放中查看…不,我没有收到错误消息这里是我的页面链接的一个链接,替换了ALBUMID:这个链接包含代码行,带有/pageid/feed,工作正常,但是有一个小的linky图像问题
<?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>