Php Facebook错误:“;创建formpost数据失败“;上传照片到粉丝页面
我想上传一张照片到粉丝页面,但我不能,我读过一次,要发送它,就必须是POST表单!是吗 index.phpPhp Facebook错误:“;创建formpost数据失败“;上传照片到粉丝页面,php,facebook,Php,Facebook,我想上传一张照片到粉丝页面,但我不能,我读过一次,要发送它,就必须是POST表单!是吗 index.php <html> <head> <title>Index Page Facebook</title> </head> <body> <?php require('config.php'); if($user){ $_SESSION['use
<html>
<head>
<title>Index Page Facebook</title>
</head>
<body>
<?php
require('config.php');
if($user){
$_SESSION['user_id'] = $user;
?>
<form action="facebook3.php" method="post" accept-charset="utf-8">
Message <input type="text" name="message"> <br>
Photo: <input type="file" name="pictureFile">
<input type="submit" value="Postar">
</form>
<?php
exit();
}else{
?>
<a href="<?php $facebook->getLoginUrl(array('scope' => $fbPermissions, 'redirect_uri' => $homeurl)); ?>">Login Facebook</a>;
<?php
}
?>
</body>
</html>
<?php
include_once("config.php");
//destroy facebook session if user clicks reset
if($_POST)
{
//$loginUrl = $facebook->getLoginUrl(array('scope' => 'manage_pages'));
//$loginUrl = $facebook->getLoginUrl(array('scope' => 'publish_stream'));
@include_once("config.php");
//Post variables we received from user
$userPhoto = $_FILES["pictureFile"]["tmp_name"];
$userMessage = $_POST["message"];
if(strlen($userMessage)<1)
{
//message is empty
$userMessage = '';
}
//HTTP POST request to PAGE_ID/photos with the publish_stream
$post_url = '/228433913910358/feed';
//posts message on page statues
$msg_body = array(
'source'=>'@'.$userPhoto,
'message' => $userMessage
);
if ($user) {
try {
$postResult = $facebook->api($post_url, 'post', $msg_body );
} catch (FacebookApiException $e) {
echo $e->getMessage();
}
}else{
header("Location: index.php ");
}
//Show sucess message
if($user && !empty($postResult))
{
echo '<html><head><title>Message Posted</title><link href="style.css" rel="stylesheet" type="text/css" /></head><body>';
echo '<div id="fbpageform" class="pageform" align="center">';
echo '<h1>Your message is posted on your facebook wall.</h1>';
echo '<a class="button" href="'.$homeurl.'">Back to Main Page</a> <a target="_blank" class="button" href="http://www.facebook.com/'.$fbuser.'">Visit Your Page</a>';
echo '</div>';
echo '</body></html>';
}
}
?>
索引页Facebook
消息
照片:
;
fb.php
<html>
<head>
<title>Index Page Facebook</title>
</head>
<body>
<?php
require('config.php');
if($user){
$_SESSION['user_id'] = $user;
?>
<form action="facebook3.php" method="post" accept-charset="utf-8">
Message <input type="text" name="message"> <br>
Photo: <input type="file" name="pictureFile">
<input type="submit" value="Postar">
</form>
<?php
exit();
}else{
?>
<a href="<?php $facebook->getLoginUrl(array('scope' => $fbPermissions, 'redirect_uri' => $homeurl)); ?>">Login Facebook</a>;
<?php
}
?>
</body>
</html>
<?php
include_once("config.php");
//destroy facebook session if user clicks reset
if($_POST)
{
//$loginUrl = $facebook->getLoginUrl(array('scope' => 'manage_pages'));
//$loginUrl = $facebook->getLoginUrl(array('scope' => 'publish_stream'));
@include_once("config.php");
//Post variables we received from user
$userPhoto = $_FILES["pictureFile"]["tmp_name"];
$userMessage = $_POST["message"];
if(strlen($userMessage)<1)
{
//message is empty
$userMessage = '';
}
//HTTP POST request to PAGE_ID/photos with the publish_stream
$post_url = '/228433913910358/feed';
//posts message on page statues
$msg_body = array(
'source'=>'@'.$userPhoto,
'message' => $userMessage
);
if ($user) {
try {
$postResult = $facebook->api($post_url, 'post', $msg_body );
} catch (FacebookApiException $e) {
echo $e->getMessage();
}
}else{
header("Location: index.php ");
}
//Show sucess message
if($user && !empty($postResult))
{
echo '<html><head><title>Message Posted</title><link href="style.css" rel="stylesheet" type="text/css" /></head><body>';
echo '<div id="fbpageform" class="pageform" align="center">';
echo '<h1>Your message is posted on your facebook wall.</h1>';
echo '<a class="button" href="'.$homeurl.'">Back to Main Page</a> <a target="_blank" class="button" href="http://www.facebook.com/'.$fbuser.'">Visit Your Page</a>';
echo '</div>';
echo '</body></html>';
}
}
?>
所以,我试着通过邮寄,直接写$photo路径,但是错误依然存在
创建formpost数据失败我知道这是一个迟到的回复,但对于其他人来说,可能会落在这里 我发现有4件事可能会有问题:
1.您需要确保$userPhoto包含到图片的有效服务器路径。
2.我用“图片”而不是“来源”来发布图片。(但可能两者都有效) 3.由于您正在上载照片,因此应将其上载到//照片而不是//提要(或使用/photos上载到相册)
4.您需要确保$facebook配置的fileUpload设置为true,或者确保写入以下行:
$facebook->setFileUploadSupport(true);在调用api之前 下面是代码的外观(未经测试的代码)
,这个页面解释了很多关于facebook上帖子图片的内容我在调用Twitter API库时遇到了同样的问题。在本例中,是库中的一行,它执行一条php curl_exec指令,该指令触发该消息。很可能您调用的Facebook API库使用了相同的指令,并且由于相同的原因失败