2010-12-08 53 views
0

我說了一點,但我沒有找到任何可以解決我的問題。Facebook的PHP圖像

我已經成功在頁面上張貼頁面管理員,鏈接添加正確,但圖像未附加。我的代碼:

Blahblah authentication, etc. 

     $attachment = array(
      'message' => 'text', 
      'name' => 'Name', 
      'link' => 'http://somelink.com', 
      'description' => '', 
      'access_token' => $ACCESS_TOKEN 
     ); 

     if(something) $attachment['media'] = array(array('type'=>'image', 'src'=>'http://'.$_SERVER['HTTP_HOST']."/media/file/image_by_id/".$data['thumb_file_tree_id'].'/?w=400&h=500', 'href'=>'http://somelink.com')); 


     try { 
      if($facebook->api('/XXX/feed', 'post', $attachment)) 
      { 
       echo 'Hooray, ok'; 
      } 
     } catch (FacebookApiException $e) { 
      echo 'Damn'; 
     } 

結果:與鏈接是否正確地發佈消息( '萬歲,OK'),但沒有圖像。它可能是由於PHP生成的圖像,而不是png/jpg/gif擴展名?我添加了一些額外的標題,如etag,可接受的範圍,最後修改等。我做了什麼錯誤(再次)?

'Something'爲true,用print_r整個附件數組檢查。

E:再次刪除[0]

+0

而不是問是否可以因此而消除它。將該圖片替換爲靜態文件的網址,然後查看是否有任何更改。此外,$ attachment ['media']應該是一個包含另一個數組的單個元素的數組? – 2010-12-08 00:25:34

+0

檢查正常圖像 - 也不起作用。是的,它必須是這樣的。還添加了$附件>> [0] << ['media']。那麼,現在有什麼問題? – Misiur 2010-12-08 00:36:44

回答

1

要他們只是在一個圖像,你可以用你的附件圖片關鍵。

$attachment = array(
      'message' => 'text', 
      'name' => 'Name', 
      'link' => 'http://somelink.com', 
      'description' => '', 
      'access_token' => $ACCESS_TOKEN, 
      'picture' => 'http://example.com/example.jpg' 
);