0

您好,我目前正在为我的网站登录 Facebook。

现在我可以显示其他所有内容,例如名字、名字、Facebook 成员 ID 的 ID,但我不能不显示电子邮件。

这是我的php代码:

<?php
require '../src/facebook.php';
$facebook = new Facebook(array(
  'appId'  => 'MYIDDDDDD',
  'secret' => 'MYIDDDDDD',
));

$user = $facebook->getUser();

if ($user) {
  try {
    $user_profile = $facebook->api('/me');
  } catch (FacebookApiException $e) {
    error_log($e);
    $user = null;
  }
}
if ($user) {
  $logoutUrl = $facebook->getLogoutUrl();
} else {
  $statusUrl = $facebook->getLoginStatusUrl();
  $loginUrl = $facebook->getLoginUrl(array('scope' => 'email'));
}
$naitik = $facebook->api('/naitik');

$myid = $user_profile['id'];
  $myemail = $user_profile['email'];
  echo $user_profile['first_name'];
  echo "Your id is - $myid<br>My email is = $myemail";
  $_SESSION['first_name']=$user_profile['first_name'];

?>

如果这很重要,我的应用程序处于沙盒模式。

我在这段代码中的错误在哪里,为什么$myemail = $user_profile['email'];显示为空白?

提前致谢!

4

1 回答 1

1

您是否首先获得用户查看他的电子邮件的权限?
https://developers.facebook.com/docs/reference/login/email-permissions/
如果没有,请参阅这篇文章Set permission for getting User's email ID from Facebook Login

于 2013-11-12T16:53:59.477 回答