o15*_*1s2 9 php facebook facebook-graph-api
我试图通过我的应用程序使用Facebook Graph API将图像上传到我的粉丝页面的相册.虽然我提供了albumID作为上传图片的参数,但它会在我自己的个人资料中上传到名为APPLICATION_NAME的相册中.粉丝专辑的专辑保持空白.我也尝试发送粉丝页面的pageID而不是albumID,但结果是一样的.我用于上传的代码是:
$fb_pfoto = $facebook->api('/' . $albumID . '/photos','POST', array(
'access_token' => $session['access_token'],
'message' => 'Caption',
'source' => '@' . realpath( '/path/to/image.jpg' )
));
Run Code Online (Sandbox Code Playgroud)
请告诉我如何将图像上传到粉丝页面而不是我自己的个人资料相册.
Arv*_*waj 12
以下是在Facebook粉丝页面上传照片的脚本:
<html>
<head>
<title>WebSpeaks.in | Upload images to Facebook</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php
require_once 'library/facebook.php';
$facebook = new Facebook(array(
'appId' => $app_id,,
'secret' => $app_secret,
'fileUpload' => true
));
//It can be found at https://developers.facebook.com/tools/access_token/
$access_token = '<Your access token>';
$params = array('access_token' => $access_token);
//The id of the fanpage
$fanpage = '330299184793';
//The id of the album
$album_id ='10150418901414794';
//Replace arvind07 with your Facebook ID
$accounts = $facebook->api('/arvind07/accounts', 'GET', $params);
foreach($accounts['data'] as $account) {
if( $account['id'] == $fanpage || $account['name'] == $fanpage ){
$fanpage_token = $account['access_token'];
}
}
$valid_files = array('image/jpeg', 'image/png', 'image/gif');
if(isset($_FILES) && !empty($_FILES)){
if( !in_array($_FILES['pic']['type'], $valid_files ) ){
echo 'Only jpg, png and gif image types are supported!';
}else{
#Upload photo here
$img = realpath($_FILES["pic"]["tmp_name"]);
$args = array(
'message' => 'This photo was uploaded via WebSpeaks.in',
'image' => '@' . $img,
'aid' => $album_id,
'no_story' => 1,
'access_token' => $fanpage_token
);
$photo = $facebook->api($album_id . '/photos', 'post', $args);
if( is_array( $photo ) && !empty( $photo['id'] ) ){
echo '<p><a target="_blank" href="http://www.facebook.com/photo.php?fbid='.$photo['id'].'">Click here to watch this photo on Facebook.</a></p>';
}
}
}
?>
<!-- Form for uploading the photo -->
<div class="main">
<p>Select a photo to upload on Facebook Fan Page</p>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" enctype="multipart/form-data">
<p>Select the image: <input type="file" name="pic" /></p>
<p><input class="post_but" type="submit" value="Upload to my album" /></p>
</form>
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
不知道这是否会有所帮助,但是您可能需要请求manage_pages扩展权限,然后使用返回的页面access_token来发布图片.您可以在此处简要了解此过程.
然后,您可以使用页面访问令牌尝试这些链接来发布照片:
/me/photos
/<page_id>/photos
/<album_id>/photos
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
26673 次 |
| 最近记录: |