我是创建Facebook应用程序的新手,因此开始使用简单的Hello World应用程序。但是当我尝试显示我的名字时,它不会显示。
这是我的代码:
<?php
require_once 'facebook.php';
$api_key = 'mykey';
$secret = 'mysecretkey';
$facebook = new Facebook($api_key, $secret);
$user = $facebook->require_login();
$fbml = "<h2>Hello world, my name is <fb:name uid='<?php echo $fb_user;?>' useyou='false' />,"
. "welcome to my first facebook application!</h2>";
echo $fbml;
?>
我的脸书应用中的输出是,
Hello world,my name is,welcome to my first facebook application!
我的名字在这里丢失了。
如果我添加下面给出的代码,显示朋友的列表,
$friends = $facebook->api_client->friends_get();
echo "<pre>Friends:" . print_r($friends, true). "</pre>";
我收到错误消息
Warning: fopen() [function.fopen]: php_network_getaddresses: getaddrinfo failed:
No such host is known.
in C:\Documents and Settings\256148\My Documents\ide\xampplite\htdocs\facebookApp\facebookapi_php5_restlib.php on line 1755
Warning: fopen(http://api.facebook.com/restserver.php) [function.fopen]:
failed to open stream: php_network_getaddresses: getaddrinfo failed:
No such host is known. in C:\Documents and Settings\256148\My Documents\ide\xampplite\htdocs\facebookApp\facebookapi_php5_restlib.php on line 1755
请指导我。
答案 0 :(得分:1)
我找到了解决问题的方法。我必须将应用程序设置中的连接URL设置为我的画布回调URL,并创建一个跨域通信通道文件,如tutorial中所示。本教程非常有用,并详细介绍了如何创建一个简单的Facebook应用程序。
但是当我使用$facebook->api_client->friends_get();
答案 1 :(得分:0)
首先,尝试使用以下代码进行身份验证过程(applogin.php
):
<?php
require_once "facebook.php";
require_once "config.php";
$facebook = new Facebook(array(
'appId' => FB_APP_ID,
'secret' => FB_API_SECRET,
'cookie' => true
));
$session = $facebook->getSession();
$params = array(
'canvas' => 1,
'fbconnect' => 0,
'next' => URL_CANVAS,
'cancel_url' => 'http://www.facebook.com/',
'req_perms' => 'publish_stream, status_update, offline_acces'
);
$login_url = $facebook->getLoginUrl($params);
// if not logged in, redirec to login page
if (!$session) {
echo '<fb:redirect url="' . $login_url . '" />';
exit;
} else {
try {
$uid = $facebook->getUser();
$me = $facebook->api('/me');
$access_token = $session['access_token'];
} catch (FacebookApiException $e) {
echo 'Error';
exit;
}
}
?>
这是config.php
:
<?php
// Facebook
define('FB_APP_ID', '');
define('FB_API_SECRET', '');
define('URL_CANVAS', 'http://apps.facebook.com/YOURAPP/');
define('URL_CALLBACK', 'http://FB.YOURCALLBACKURL.COM/YOURAPP/');
?>
最后是你的index.php
<?php
require_once dirname(__FILE__) . "/applogin.php";
// using Graph API
echo $me['name'];
?>
<!--// some FBML //-->
<fb:bookmark />
<h2>Hello world, my name is fb:name uid='<?php echo $uid;?>' useyou='false' />
welcome to my first facebook application!</h2>
希望这可以帮助您编写自己的Facebook应用程序。