繁体   English   中英

获取用户生日 Facebook Graph

[英]Get user birthday Facebook Graph

我想在用户通过 Facebook 登录时收集一些信息。 除了用户生日之外,我可以获得我需要的所有信息

if ( isset( $session ) ) {
  // graph api request for user data
  $request = new FacebookRequest( $session, 'GET', '/me?fields=first_name,last_name,birthday,email,gender');
  $response = $request->execute();
  // get response
  $graphObject = $response->getGraphObject();
        $fbid = $graphObject->getProperty('id');            // To Get Facebook ID
        $fbfname = $graphObject->getProperty('first_name'); // To Get Facebook first name
        $fblname = $graphObject->getProperty('last_name');  // To Get Facebook last name
        $fbbday = $graphObject->getProperty('birthday');    // To Get Facebook birthday
        $femail = $graphObject->getProperty('email');       // To Get Facebook email ID
      $fgender = $graphObject->getProperty('gender');       // To Get Facebook gender
    /* ---- Session Variables -----*/
      $_SESSION['FBID'] = $fbid;           
      $_SESSION['FIRST_NAME'] = $fbfname;
      $_SESSION['LAST_NAME'] = $fblname;
      $_SESSION['BIRTHDAY'] = $fbbday;
      $_SESSION['EMAIL'] =  $femail;
      $_SESSION['GENDER'] =  $fgender;
      checkuser($fbid,$fbfname,$femail);
    /* ---- header location after session ----*/
  header("Location: index.php");
} else {
  $loginUrl = $helper->getLoginUrl(array('scope' => 'email'));
 header("Location: ".$loginUrl);
}
?>

我究竟做错了什么?

我究竟做错了什么?

您不是在要求用户获得访问其生日所需的权限。

https://developers.facebook.com/docs/facebook-login/permissions#reference-user_birthday

您没有要求正确的许可:

$loginUrl = $helper->getLoginUrl(array('scope' => 'email,user_birthday'));

顺便说一句,请确保使用应用程序管理员进行测试。 user_birthday需要经过审核才能让所有人使用: https : //developers.facebook.com/docs/facebook-login/review

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM