views:

209

answers:

1

Hey,

on my site right now I'm trying to have it post to a users wall a media file.
I had it working on the old api before, but now I'm trying to get it working on the new one and I'm having an issue.

I'm running this

$facebook->api_client->stream_publish($message, $attachment, $action_links);

Is that the old api or the new one? Because I'm getting this error

Call to a member function stream_publish() on a non-object in

I was reading a tutorial and it said to do this

$statusUpdate = $facebook->api('/me/feed', 'post', array('message'=> 'the message', 'cb' => ''));

but how can I post an attachment/ action links using that?

Thanks!

+2  A: 

First of all, don't confuse APIs with SDKs. The newest PHP SDK is capable of communicating with both the new Graph API and the old REST API.

And you are using the new SDK, since Facebook::$api_client doesn't exist in the new SDK.

Secondly, as is usual with most tutorials, they only show you a snapshot of the full features of a system. See here for more details about publishing with the Graph API.

However, you can still use the old API to publish your message like so

$facebook->api( array(
    'method'       => 'stream.publish'
  , 'target_id'    => $facebook->getUser()
  , 'message'      => $message
  , 'attachment'   => $attachment
  , 'action_links' => $action_links
) );
Peter Bailey
Thanks! I'll try this out.
Belgin Fish

related questions