将Facebook Connect添加到PHP网站的最简单方法是什么?

时间:2009-04-02 12:41:31

标签: php javascript facebook

Facebook Connect

我花了几周时间整理一个使用Facebook连接作为身份验证的基本网站。

我研究了提供的示例应用程序'theRunAround'。然而,代码是复杂的并且使用大量文件和类,其中大多数具有我不需要的许多功能。我也很好地阅读了文档。

我的代码始终几乎。但是,偶尔我会收到奇怪的,不可预测的错误。

必备功能

  • 检查用户是否已登录Facebook,如果是,请检索fb_uid,名称,个人资料照片
  • 返回已连接到此应用程序的朋友列表

是否有任何教程,比Facebook提供的关于这种简单功能的教程更好?

2 个答案:

答案 0 :(得分:2)

我最近使用facebook连接技术向Cogenuity添加了朋友通知功能。

首先,您需要在PHP代码中创建facebook对象。我假设你已经完成了facebook应用程序注册的好处。我发现Facebook上有很多部分连接不起作用但是工作原理是什么。

$user = $facebook->require_login();

我发现FQL部件工作得很好。

$query = "select uid1 from friend where uid2 = {$user}";
$results = $facebook->api_client->fql_query($query);

我使用了这个可能满足您需求的FQL查询。

$query = "SELECT name, pic_square, status, about_me FROM user WHERE uid = {$uid}";
$results = $facebook->api_client->fql_query($query);

与notification_send方法一样。

$facebook->api_client->notifications_send($notifyTarget, $intro, 'user_to_user');

我希望这会有所帮助。

答案 1 :(得分:2)

我编写了自己的库来处理Facebook Connect,因为我发现提供的库非常缺乏。

我无法提供代码,因为它是公司代码,但这里是我需要做的细分。希望你可以使用它并轻松填写空白。

  1. 在应用程序设置中,配置“连接”选项卡。在我的例子中,“连接URL”是我的xd_receiver.htm文件所在的根文件夹。此外,在“高级”下,我将我的应用标记为Web应用程序。

  2. 将xd_receiver.htm文件放在上面指定的根文件夹中。有很多关于xd_receiver.htm的文档。这是facebook在用户登录时点击的内容。它会将cookie写入他们的浏览器,您的应用程序可以在以后读取这些cookie进行身份验证。

  3. Facebook设置的Cookie格式为_,其中APIKEY是您的应用API密钥,是Cookie的名称。您需要_session_key cookie才能进行进一步的API调用。如果未设置此cookie,则需要显示步骤4 - 6中描述的登录按钮。否则,请跳至步骤7.

  4. 您需要在页面上的Facebook javascript文件中加载您将拥有FB登录按钮。 ==> http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php

  5. 要显示FB登录按钮,请使用: Facebook JS将自动为您呈现Facebook登录按钮。它将触发用户登录后您将定义的“facebook_onlogin”方法,以便您在登录后可以执行某些操作。

  6. 在上面的标记下方,你需要调用FB init javascript让它呈现按钮:

    FB.init('你的API密钥在这里,'绝对路径到你的XD_RECEIVER.HTM文件');
  7. 使用cookie中设置的session_key进行任何API调用。如何进行API调用已有详细记录。


  8. 希望这有帮助。