Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Permission to get user email with Facebook PHP SDK

I have a working integration with facebok api via PHP SDK and working login. Now I tried to add the permission for email as well with the following code, but when trying to connect/login to the app the email is not requested.

// login or logout url will be needed depending on current user state.
if ($me) {
  $logoutUrl = $facebook->getLogoutUrl();
} else {
  $loginUrl = $facebook->getLoginUrl(array(
    'req_perms' => 'email',
  ));
}

The error must be in this code since everything else works fine. Thanks!

like image 574
Joseph Avatar asked Apr 06 '11 09:04

Joseph


2 Answers

$loginUrl = $facebook->getLoginUrl(array(
   'scope' => 'email'
));

This should be login url

<a href="<?php echo $loginUrl; ?>">Login with Facebook</a>

also additional permission must be passed to scope variable

  $loginUrl = $facebook->getLoginUrl(array(
   'scope' => 'email, user_activities '
 ));

for additional permissions please visit:

http://developers.facebook.com/docs/authentication/permissions/#user_friends_perms

like image 141
Halis Yılboğa Avatar answered Sep 30 '22 07:09

Halis Yılboğa


This should work with the PHP SDK:

header('Location:'.$facebook->getLoginUrl(array(
    'scope' => 'email'
)));
exit;
like image 38
ghstcode Avatar answered Sep 30 '22 05:09

ghstcode