代码之家  ›  专栏  ›  技术社区  ›  Ali

php中的facebook developemt-新手问题

  •  1
  • Ali  · 技术社区  · 15 年前

    我正在做一个将Facebook应用程序与常规网站同步的项目。

    数据库有一个用户表,但该表只获得应用程序每个用户的用户ID。用户ID是用户的Facebook用户ID。

    对于用户表中的每个用户,我需要从facebook获取他们的姓名和其他信息。客户使用的是Facebook应用程序,所以我认为他应该有一个开发者密钥,以及其他需要的东西。

    我的问题是,如何使用Facebook用户ID从Facebook中检索用户的姓名和其他信息?

    4 回复  |  直到 15 年前
        1
  •  3
  •   Andreas Klinger    15 年前

    首先,确保你的计划符合 Facebook Developer Policy .

    无法存储从中接收的数据 Facebook,除了某些可存储的 数据“。

    http://wiki.developers.facebook.com/index.php/Platform_Policy_Overview#6._Storing_and_Using_Data_You_Receive_From_Facebook

    回答你的问题。

    黑客之道:

    对于多个用户,一个批处理的FQL语句应该可以做到这一点。您可以使用API函数(也可以批处理)或对FQL查询的API调用。

    越来越丰富的功能方式:

    你想 连接 你的网站 脸谱网 . 你真正想要的是 Facebook Connect.

    Facebook Connect就是一个取代占位符标签的javascript层。通过Facebook Connect,你可以说 <fb:photo pid="54321" uid="6789"></fb:photo>. 或者在你的情况下

        2
  •  1
  •   hanno    15 年前

    使用以下FQL语句:

    SELECT name FROM user WHERE uid=211031
    

    有关详细信息,请阅读 http://wiki.developers.facebook.com/index.php/FQL

        3
  •  1
  •   Paul    15 年前

    如果你只想显示某人的名字,这是一个快速而简单的方法

    <fb:name useyou='false' uid=".'"'.$values[$index]['userid'].'"'." />
    

    注意:此代码在for循环中使用,由于我期望有多行,所以用户db信息被放入了一个数组中。

    一个比处理FQL更容易获取用户信息的方法是使用他们的API

    我想这是你想要的API http://wiki.developers.facebook.com/index.php/Users.getStandardInfo

        4
  •  1
  •   Pierre-Antoine LaFayette    15 年前
    
    require_once('facebook-platform/client/facebook.php');
    
    $facebook = new Facebook(API_KEY, SECRET);
    $facebook->require_login();
    
    function getInfo($user_list, $fields) 
    {
        try
        {
            $u = $facebook->api_client->users_getInfo($user_list, $fields);
            return $u;
        }
        catch (FacebookRestClientException $e)
        {
            echo $e->getCode() . ' ' . $e->getMessage();
        }
    }
    
    

    做类似的事情,$user'u list是一个uids列表,$fields是一个你想要从facebook中检索到的所有userinfo字段的列表。

    看看Facebook API。