2012-07-11 77 views
0

我看了几个有关此错误消息的stackoverflow帖子,但没有人为我工作。使用Facebook PHP SDK:未捕获CurlException:26:创建formpost dat失败

我要上传照片至Facebook:

public function uploadPhoto($path){ 
    $photoSettings = array(
     'access_token'=> $this->facebook->getAccessToken(), 
     'name' => 'uploaded foto', 
     'source' => '@' . realpath($path) 
    ); 

    $photo = $this->facebook->api('me/photos','POST',$photoSettings); 
} 

当我调用这个函数,我得到了以下错误消息:

未捕获CurlException:26:无法创建formpost数据

我100%确定要上传的图像存在(并且路径是正确的)。

这是我的facebook初始化:(文件上传为true)

$this->facebook = new Facebook(array(
      'appId' => $this->config['appId'], 
      'secret' => $this->config['appSecret'], 
      'fileUpload' => true, 
      'cookie' => true 
    )); 

我真的不明白,为什么我得到这个错误,因为我的代码似乎是正确的。你认为我的服务器/服务器的cURL配置可能有问题吗?我不太了解cURL。

我希望你能帮助我!我期待着您的回答:-)

问候, 安德烈亚斯

回答

1

realpath($path)没有指向实际的服务器映像位置。如果$path是图像的完整路径,则改为使用'source' => '@' . $path

1
I kept getting “CurlException: 26: failed creating formpost data” 

Here is my working code for uploading a photo from the same directory as the PHP page communicating with Facebook: 
$facebook = new Facebook(array(
'appId'  =>'*****', 
'secret'  =>'*******', 
'fileUpload' => true, 
'cookie'  => true 
)); 
$user = $facebook ->getUser(); 
if($user) 
{ 
$facebook->setFileUploadSupport(true); 
$args = array(
    'message' => 'TEst from App.', 
    'image' => '@' . realpath('awesome.jpeg') 
); 
try { 
    $data = $facebook->api('/me/photos', 'post', $args); 
} catch(FacebookApiException $e) { 
    echo "ERROR: " . $e; 
} 

} 
相关问题