从计算机上获取一张图片,并使用PHP将其一次发布到Facebook的多个页面上

从计算机上获取一张图片,并使用PHP将其一次发布到Facebook的多个页面上,php,facebook,facebook-graph-api,facebook-php-sdk,Php,Facebook,Facebook Graph Api,Facebook Php Sdk,问题:如果我在这里使用facebook开发者博客中的图形URL方法,我一次只能发布到一个页面(我希望能够将图片发布到我的应用程序用户的所有选定页面)。[开发一个应用程序,让用户一次发布到多个页面]。因此我没有使用这种方法,下面是我的方法 使用Heroku app engine,它不允许在其服务器上永久存储上传的文件。因此我无法保存照片。即,请不要参考移动上传的文件() 以下是html表单字段的代码: <form enctype="multipart/form-data" action="p

问题:如果我在这里使用facebook开发者博客中的图形URL方法,我一次只能发布到一个页面(我希望能够将图片发布到我的应用程序用户的所有选定页面)。[开发一个应用程序,让用户一次发布到多个页面]。因此我没有使用这种方法,下面是我的方法

使用Heroku app engine,它不允许在其服务器上永久存储上传的文件。因此我无法保存照片。即,请不要参考移动上传的文件()

以下是html表单字段的代码:

<form enctype="multipart/form-data" action="poster.php" method="POST">
<p>Please choose a photo: </p>
<input name="source" type="file">
<p>Add Description </p>
<input name="message" type="text" value=""> 
<input type="submit" value="Upload"/>
</form>

请选择一张照片:

添加说明

下面是poster.php代码:

<?php
require "facebook.php" ;
$facebook = new Facebook(array(
'appId'  => '',
'secret' => '',
'cookie' =>true,
));
if(session_id()){}
else{session_start();}
$facebook->setFileUploadSupport("http://" . $_SERVER['SERVER_NAME']);
$x=realpath($_FILES['source']['tmp_name']);
$parameters = array('message' => $_POST['message'],'source' =>'@' . $x );
$parameters['access_token'] = $_SESSION['active']['access_token'];
$check=$facebook->api('/me/photos','POST',$parameters);
$redirecting="https://apps.facebook.com/pagecron/manage.php";
echo "<script>top.window.location='".$redirecting."';</script>";
?>

我不确定,但您可以试试这个-

$parameters = array(
     'message' => $_POST['message'],
     'picture' => '@' . $path,
     'link' => $_POST['link'],
     'name' => $_POST['name'],
     'caption' => $_POST['caption'],
     'description' => $_POST['description']
      );

如果这不能解决您的问题,您可以共享API调用的代码。

我不确定,但您可以试试这个-

$parameters = array(
     'message' => $_POST['message'],
     'picture' => '@' . $path,
     'link' => $_POST['link'],
     'name' => $_POST['name'],
     'caption' => $_POST['caption'],
     'description' => $_POST['description']
      );

如果这不能解决您的问题,您可以共享API调用代码。

很抱歉回答我自己的问题,但这对所有其他人都非常有帮助……首先……我很高兴我做到了

这是错误所在。。。 替换
$facebook->setFileUploadSupport(“http://”$\u SERVER['SERVER\u NAME'])


$facebook->setFileUploadSupport(“http://apps.facebook.com/myappname");

很抱歉回答我自己的问题,但这对所有其他人都非常有帮助……首先……我很高兴我做到了

这是错误所在。。。 替换
$facebook->setFileUploadSupport(“http://”$\u SERVER['SERVER\u NAME'])


$facebook->setFileUploadSupport(“http://apps.facebook.com/myappname");

是的,这应该可以工作,因为完整路径将构建图像的链接。

是的,这应该可以工作,因为完整路径将构建图像的链接。

好的,我只是尝试一下。有点困惑,
$path=$\u FILES[“file”][“tmp\u name”]
提供路径名和文件名,或者仅提供文件名??不要使用此选项,请提供文件的实际路径,然后使用我在评论中提到的代码。您可以进行搜索吗?好的,我只是在尝试。有点小混乱,
$path=$\u FILES[“file”][“tmp\u name”]
提供路径名和文件名,或者仅提供文件名??不要使用此选项,请提供文件的实际路径,然后使用我在commentCan中提到的代码,以便进行搜索。