如何使用最新的php SDK从Facebook获取fbid,姓名,电子邮件


How to get fbid, name, email from facebook using latest php SDK

需要帮助。

如何使用 PHP SDK 登录时获取 Facebook 电子邮件

在更改日志中搜索"声明性字段":https://developers.facebook.com/docs/apps/changelog#v2_4

您必须指定要获取的字段,否则将仅获取ID和名称。例如:

/me?fields=name,email
  1. 包括java脚本FB SDK:

    <script>(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "http://connect.facebook.net/en_US/all.js#xfbml=1&appId=PLACE_YOUR_FB_APP_ID"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk'));</script>

  2. 启动链接以连接Facebook:

    <script>function FBLogin(){

       FB.login(function(response){
         if(response.authResponse){
            var USERID  =   response.authResponse.userID;
            FB.api('/me', function(userinfo){
                jQuery.ajax({
                type:"POST",
                url: "ajax_fb_login.php",
                data:  "userinfo="+userinfo,
                success: function(html){
                }
              });
            });
            } 
        }, {scope: 'email,user_likes'});
    }</script>
    
  3. 检索 php 文件中的 facebook 数据:

    $fbid = $_REQUEST['userinfo']['id']; $email = $_REQUEST['用户信息']['电子邮件']; $first_name = $_REQUEST['userinfo']['first_name']; $last_name = $_REQUEST['userinfo']['last_name']; $fb_name = $_REQUEST['userinfo']['name'];