PHP SDK for Facebook: Uploading an Image for an Event created using the Graph API

那年仲夏 提交于 2020-01-03 05:13:16

问题


Can anyone shed some light on my problem?

<?php

$config = array();
$config['appId'] =  "foo";
$config['secret'] = "bar";
$config['cookie'] = true;
$config['fileUpload'] = true;

$facebook = new Facebook($config);

$eventParams = array(
    "privacy_type"  => $this->request->data['Event']['privacy'],
    "name"          => $this->request->data['Event']['event'],
    "description"   => $this->request->data['Event']['details'],
    "start_time"    => $this->request->data['Event']['when'],
    "country"       => "NZ"
);

//around 300x300 pixels
//I have set the permissions to Everyone
$imgpath = "C:\\Yes\\Windows\\Path\\Photo_for_the_event_app.jpg"; 
$eventParams["@file.jpg"] = "@".$imgpath;

$fbEvent = $facebook->api("me/events", "POST", $eventParams);

var_dump($fbEvent); //I get the event id

I also have this in my "scope" when the user is asked to Allow the app to post on his behalf: user_about_me,email,publish_stream,create_event,photo_upload

This works. It creates the event with all the details I have specified. EXCEPT for the event image.

I have been to most of Stackoverflow posts related to my problem but all of them are not working for me. (EG: https://stackoverflow.com/a/4245260/66767)

I also do not get any error.

Any ideas?

THanks!


回答1:


Yes, the idea is that Facebook has bug. I have problems with event picture as well. The topic in tracker and this is my post on stackOverflow

Btw, you can try this code after creating the event ->

public function uploadFacebookEventPicture($fullPath, $eventId) {
    $mainImage = '@' . $fullPath;   
    $imgData = array(
        'picture' => $mainImage
    );
    try {
        $data = $this->facebook->api('/'.$eventId, 'post', $imgData);
        return $data;
    } catch (FacebookApiException $e) {
        error_log('Failed to attach picture to event. Exception: ' . $e->getMessage());
    }       
    return null;
} 

Maybe it will work for you, for me it stopped to work since Facebook issue was discovered.



来源:https://stackoverflow.com/questions/12170518/php-sdk-for-facebook-uploading-an-image-for-an-event-created-using-the-graph-ap

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!