Search code examples
phpfacebook-php-sdk

How to get profile info from Facebook using Facebook-PHP-SDK


I am new to php and just downloaded Facebook php sdk and I am trying to write a very simple code to go to my personal Facebook retrieve the profile name and return it. But I keep getting an error. Here is what I got so far. I have already set up an account on Facebook Developers so I have an app id, app secret, and access token.

php file

<?php
require_once(__DIR__ . '/vendor/autoload.php');
$fb = new Facebook\Facebook([
  'app_id' => '{}',
  'app_secret' => '{}',
  'persistent_data_handler' => 'memory',
  'default_graph_version' => 'v3.3',
  ]);

try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->get('/me?fields=id,name', '{access-token}');
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}

$user = $response->getGraphUser();

echo 'Name: ' . $user['name'];
?>

Error Message

Graph returned an error: Invalid OAuth access token

Solution

  • That code works for me:

            $app_id = "your_app_id";
            $secret = "your_secret";
            $token = "your_token";
            $fb = new \Facebook\Facebook([
                'app_id' => $app_id,
                'app_secret' => $secret,
                'default_graph_version' => 'v3.2',
                'default_access_token' => $token, // optional
            ]);