2012-03-06 93 views
0

我想从我的服务器到Facebook发布照片,但我得到奇怪的错误:Facebook的:致命错误:未捕获CurlException:26:未能创建formpost数据抛出

Fatal error: Uncaught CurlException: 26: failed creating formpost data thrown in base_facebook.php on line 886

和APP的代码是在这里:

$facebook->setFileUploadSupport(true); 
$file = "/uploads/test_photo.jpg"; 
$post_data = array(
    "message" => "My photo caption", 
    "source" => '@' . realpath($file) 
); 
$album_id = "10150639478245912"; 
$data = $facebook->api("/".$album_id."/photos", 'post', $post_data); 
print_r($data); 

许可其使用应用:

$loginUrl = $facebook->getLoginUrl(
    array('scope' => 'publish_stream, user_photos') 
); 
+0

我不是PHP程序员,但它可能是CURL将图像从文件位置转换为多部分发布的字节流的位置。也许Web服务器/ CURL无法获取您指定的$文件的数据字节? – DMCS 2012-03-06 22:35:40

回答

0

取而代之的是...

$post_data = array(
    "message" => "My photo caption", 
    "source" => '@' . realpath($file) 
); 

试试这个...

$post_data = array(
    "message" => "My photo caption" 
) 
$post_data[basename($file)] = '@' . realpath($file); 
+0

API将会期望文件位于'source'变量中,并且服务器不会以这种方式确定上传文件的名称。 – Walf 2012-06-01 04:47:06

+0

对我来说它工作正常:) – 2012-06-02 09:49:31

1

检查它是否已经真正上传的文件......有时因为没有被上传,并在收到此错误结果的文件URL是空的。

相关问题