can't get email address from Facebook SDK v5 for PHP -


i want user's email address after logging facebook using php sdk v5, running issues don't quite understand.

according step step guide https://developers.facebook.com/docs/reference/php/5.0.0

i create login.php , login-callback.php files

login.php

session_start() ; require_once __dir__ . '/src/facebook/autoload.php';  $fb = new facebook\facebook([   'app_id' => $app_id,   'app_secret' => $app_secret,   'default_graph_version' => 'v2.2', ]);  $helper = $fb->getredirectloginhelper(); $permissions = ['email', 'public_profile']; // optional $loginurl = $helper->getloginurl('http://www.example.com/login-callback.php', $permissions);   echo '<a href="' . $loginurl . '">log in facebook!</a>'; 

login-callback.php

session_start() ; require_once __dir__ . '/src/facebook/autoload.php';  # login-callback.php $fb = new facebook\facebook([   'app_id' => $app_id,   'app_secret' => $app_secret,   'default_graph_version' => 'v2.2', ]);  $helper = $fb->getredirectloginhelper(); try {   $accesstoken = $helper->getaccesstoken(); } catch(facebook\exceptions\facebookresponseexception $e) {   // when graph returns error   echo 'graph returned error: ' . $e->getmessage();   exit; } catch(facebook\exceptions\facebooksdkexception $e) {   // when validation fails or other local issues   echo 'facebook sdk returned error: ' . $e->getmessage();   exit; }  if (isset($accesstoken)) {   // logged in!   $_session['facebook_access_token'] = (string) $accesstoken;    // oauth 2.0 client handler $oauth2client = $fb->getoauth2client();  // exchanges short-lived access token long-lived 1 $longlivedaccesstoken = $oauth2client->getlonglivedaccesstoken($_session['facebook_access_token']);   // sets default fallback access token don't have pass each request $fb->setdefaultaccesstoken($longlivedaccesstoken);  try {   $response = $fb->get('/me');   $usernode = $response->getgraphuser(); } catch(facebook\exceptions\facebookresponseexception $e) {   // when graph returns error   echo 'graph returned error: ' . $e->getmessage();   exit; } catch(facebook\exceptions\facebooksdkexception $e) {   // when validation fails or other local issues   echo 'facebook sdk returned error: ' . $e->getmessage();   exit; }  echo 'logged in ' . $usernode->getname();  $graphobject = $response->getgraphobject(); $email = $graphobject->getproperty('email');  // not getting thing  echo $email; // empty  } 

the graphobject->getproperty('email'); not returning anything

my problem same. site recognized login, received name , id.

i saw hint here:

$fb->get('/me?fields=email'); 

this fixed problem!


Comments

Popular posts from this blog

Android : Making Listview full screen -

javascript - Parse JSON from the body of the POST -

javascript - Chrome Extension: Interacting with iframe embedded within popup -