如何将这些数据发送到facebook?facebook api照片上传


how do i send this data to facebook? facebook api photo upload

好的,所以facebook希望我发送一个本地存储在服务器上的图像,但我将图像存储在数据库的BLOB中。。。

try {
     $file = 'http://blaze-craft.com/matt/get.php?id=' . $lastid;
    $post_data = array(
        "message" => "Uploaded using the Funnymemes app!",
         "source" => $file
     );
    $data['photo'] = $facebook->api("/me/photos", 'post', $post_data);
  }
  catch (FacebookApiException $e) {
  }

但它没有上传。。。我从facebook api文档中得到了这个代码,所以我不确定发生了什么?

有什么想法吗?

为了上传照片,你必须修复以下问题:

  1. 图像文件应存储在文件系统中(即将BLOB保存回磁盘)
  2. $post_data阵列中的图像路径之前使用@

为此,我会做一些类似的事情:

try
{
    $url    = 'http://blaze-craft.com/matt/get.php?id=' . $lastid;
    $saveas = '/images/image.jpg';
    $res = @file_put_contents($saveas, file_get_contents($url));
    if($res === false) throw new Exception('Cannot fetch image');
    $post_data = array(
        "message" => "Uploaded using the Funnymemes app!",
        "source"  => '@' . $saveas;
     );
    $data['photo'] = $facebook->api("/me/photos", 'post', $post_data);
  }
  catch (FacebookApiException $e) {  }
  catch (Exception $e) { }