Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在页面时间线上上传Facebook照片(PHP)_Php_Facebook - Fatal编程技术网

在页面时间线上上传Facebook照片(PHP)

在页面时间线上上传Facebook照片(PHP),php,facebook,Php,Facebook,我在我的网站上有一个图片缓存,我需要每天将这些照片上传到我的Facebook粉丝页面4-5次。我的代码创建相册并将照片上载到相册,但是,这些照片不会出现在时间轴中 所以我的问题是,我如何把照片上传到我的粉丝页面,让它们出现在时间线上,墙上。使用的语言是PHP 非常感谢您的帮助 谢谢 编辑1: 代码如下: <?php require 'facebook.php'; $facebook = new Facebook(array( 'appId' => "AAAAAAAAA

我在我的网站上有一个图片缓存,我需要每天将这些照片上传到我的Facebook粉丝页面4-5次。我的代码创建相册并将照片上载到相册,但是,这些照片不会出现在时间轴中

所以我的问题是,我如何把照片上传到我的粉丝页面,让它们出现在时间线上,墙上。使用的语言是PHP

非常感谢您的帮助

谢谢

编辑1: 代码如下:

<?php   
require 'facebook.php';
$facebook = new Facebook(array(
    'appId'  => "AAAAAAAAAA",
    'secret' => "BBBBBBBBBB",
));

$fanpage_token = "ZZZZZZZZZZZZZZZZZZZZZZZZZZ";

$facebook->setFileUploadSupport(true);

//Create an album
$album_details = array(
        'message'=> 'test album',
        'name'=> 'album'
);
$create_album = $facebook->api('/PAGE_ID/albums', 'post', $album_details);

$album_uid = $create_album['id'];

echo $album_uid;

 $img = '7newx.jpg';
  $args = array(
   'message' => 'Random message',
   'image' => '@' . $img,
   'aid' => $album_uid,
   'no_story' => 1,
   'access_token' => $fanpage_token
  );

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

?>

好的,我想你试着删除了“不”的故事,发现它没有影响时间线。这也是我发现的

你要做的是再发一篇帖子,但这次,作为链接。您需要使用从第一篇文章返回的数组$photo。如果您检查,您应该看到它有一个名为['id']的元素,其中包含上载照片的id

你需要把它变成facebook用来显示的链接。这很简单

if (isset($photo['id']))
{
$message = "My latest photo";
$link = "https://www.facebook.com/photo.php?fbid=".$photo['id'];
$attachment = array
(
'access_token'=>$fanPageAccessToken,
'type' => 'photo',
'message' => $message,
'link' => $link 
);

$result = $facebook->api($fanPageId.'/links/','post',$attachment);
}
我假设您可以计算出$fanPageAccessToken和$fanPageId是什么


如果你这样做,你应该得到你想要的。

好吧,我猜你试着删除了“不”的故事,发现它没有影响时间线。这也是我发现的

你要做的是再发一篇帖子,但这次,作为链接。您需要使用从第一篇文章返回的数组$photo。如果您检查,您应该看到它有一个名为['id']的元素,其中包含上载照片的id

你需要把它变成facebook用来显示的链接。这很简单

if (isset($photo['id']))
{
$message = "My latest photo";
$link = "https://www.facebook.com/photo.php?fbid=".$photo['id'];
$attachment = array
(
'access_token'=>$fanPageAccessToken,
'type' => 'photo',
'message' => $message,
'link' => $link 
);

$result = $facebook->api($fanPageId.'/links/','post',$attachment);
}
我假设您可以计算出$fanPageAccessToken和$fanPageId是什么



如果你这样做,你应该会得到你想要的。

你在使用什么php sdk或javascript sdk?你能显示上传调用的源代码吗?编辑1:当前代码。好的,我已经回答了。如果您仍然被卡住,请告诉我们。您使用的是什么php sdk或javascript sdk。?能否显示上载调用的源代码?编辑1:当前代码。好的,回答完毕。如果你仍然被困,请告诉我们。太棒了!这就是我想要的。为什么我以前没想到呢?谢谢你的帮助。我不能给你投票,因为我才刚出生一天(我想我没有足够的学分给你投票)。你应该可以把我的答案标记为接受。如果你不能,别担心。一开始我也觉得有点困惑!如何将上传的照片/帖子标记为高亮显示。问题是……我的答案究竟为什么会被否决?我有两个答案,都很快被否决了。我一定冒犯了一个不喜欢我高质量解决方案的人!这确实很奇怪,因为您的解决方案非常有效。你应该把它升级到网站版主那里。太棒了!这就是我想要的。为什么我以前没想到呢?谢谢你的帮助。我不能给你投票,因为我才刚出生一天(我想我没有足够的学分给你投票)。你应该可以把我的答案标记为接受。如果你不能,别担心。一开始我也觉得有点困惑!如何将上传的照片/帖子标记为高亮显示。问题是……我的答案究竟为什么会被否决?我有两个答案,都很快被否决了。我一定冒犯了一个不喜欢我高质量解决方案的人!这确实很奇怪,因为您的解决方案非常有效。您应该将其上报给网站版主。