2013-04-17 50 views
0

我創建通過使用創建一個Facebook事件和出版封面照片

$param = array(
     'name' => $name, 
     'start_time' => $ate, 
     'description' => $description, 
     'picture' => $photo    
    ); 

$facebook->api('/me/events', 'POST', $param); 

是否有可能設置封面照片正在被這個調用創建該事件的PHP SDK Facebook的事件? 如果不是,我可以設置它嗎?

該文件說明封面字段需要照片ID。 如果我還沒有上傳照片,它沒有ID,那麼我該怎麼辦?

我是否會將照片上傳到發佈「創建活動」動作的用戶的facebok帳戶,獲取照片ID並將其張貼到活動中?

如果我不想將其上傳到用戶配置文件,該怎麼辦?

謝謝

+0

在這個崗位的答案爲我工作:http://stackoverflow.com/questions/15725574/facebook-php-sdk-upload-event-cover-photo – kaore

回答

1

代碼示例,上傳封面照片時創建事件:

<?php 
//extract data from the post 
extract($_POST); 

//set POST variables 
$url = 'https://graph.facebook.com/me/events'; 


$data["file"] = "@pika.jpg;type=image/jpeg"; 
$data["access_token"] = "PUT_USER_ACCESS_TOKEN_HERE"; 
$data["name"] = "testing"; 
$data["start_time"] = "2013-04-25"; 
$data["end_time"] = "2013-04-25"; 
$data["description"] = "coffee"; 
$data["location"] = "oldtown"; 
$data["privacy_type"] = "FRIENDS"; 

//make the POST request 
$curl = curl_init(); 
curl_setopt($curl, CURLOPT_URL, $url); 
curl_setopt($curl, CURLOPT_VERBOSE, 1); 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($curl, CURLOPT_HTTPHEADER, $header); 
curl_setopt($curl, CURLOPT_POSTFIELDS, $data); 
$result = curl_exec($curl); 

//curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "Content-Type: multipart/form-data; boundary=--$srand"); 

//close connection 
curl_close($ch); 

?> 

代碼示例,事件產生後,你也可以更換封面照片被上傳新的照片:

<?php 
//extract data from the post 
extract($_POST); 

//set POST variables 
$url = 'https://graph.facebook.com/PUT_EVENT_ID_HERE'; 


$data["file"] = "@pikachu.jpg;type=image/jpeg"; 
$data["access_token"] = "PUT_USER_ACCESS_TOKEN_HERE"; 

//make the POST request 
$curl = curl_init(); 
curl_setopt($curl, CURLOPT_URL, $url); 
curl_setopt($curl, CURLOPT_VERBOSE, 1); 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($curl, CURLOPT_HTTPHEADER, $header); 
curl_setopt($curl, CURLOPT_POSTFIELDS, $data); 
$result = curl_exec($curl); 

//close connection 
curl_close($ch); 

?> 
+0

我使用圖形api,我發送了一個名爲「file」的變量,如上面的代碼所示,但沒有成功。這兩種API之間有什麼不同嗎? – Terumi

+0

文件變量應始終以符號'@'開頭。 –

0

要上傳活動的封面照片 - 首先,創建活動時無法執行此操作。您首先必須創建一個活動,因此您將獲得event_id。使用此event_id,撥打電話:

\POST /{event-id}與PARAM:cover_url

那是唯一辦法做到這一點,截至目前(我測試過)。在this documentation中描述的方法在目前爲止不工作,這被報告爲錯誤。您可以訂閱此bug以獲取有關相同的任何更新。

代碼:

$param = array(
    'cover_url' => '{image-link}' 
); 

$facebook->api('/{event-id}', 'POST', $param); 
相關問題