Php Facebook应用程序“如果空会话”不工作,我如何修复它?
这是我希望在facebook上创建一个非常简单的应用程序来打招呼的代码,但是我遇到了一个错误Php Facebook应用程序“如果空会话”不工作,我如何修复它?,php,facebook,try-catch,fbml,Php,Facebook,Try Catch,Fbml,这是我希望在facebook上创建一个非常简单的应用程序来打招呼的代码,但是我遇到了一个错误 <?php require "facebook.php"; // create application instance $facebook = new Facebook(array( 'appId' => '********************************', 'secret' => '********************************', 'coo
<?php
require "facebook.php";
// create application instance
$facebook = new Facebook(array(
'appId' => '********************************',
'secret' => '********************************',
'cookie' => true,
));
$session = $facebook->getSession();
if (!empty($session)) {
try {
$uid = $facebook->getUser();
$user = $facebook->api('/me');
} catch (exception $e) {}
if (!empty($user))
{
if($_GET['installed']=='1') {
header("Location: http://apps.facebook.com/gamerimg/");
}
echo "Hello ".$user['first_name'];
} else {
die("An error occoured!");
}
} else {
$url = $facebook->getLoginUrl();
echo "<a href='".$url."'>Click here</a> to add the GamerImg Facebook application.";
}
?>
我是fbml的新手,所以我不知道该怎么办!我怎么能修好它
这可能与这句话有关:$user=$facebook->api'/me' 很可能你的Facebook呼叫引发了异常,但你捕获了异常并继续。通常,您会将die调用放在catch块中,而if块放在try块中
如果您将die调用放在try块中,我会将其更改为die,直到发生错误$e->getMessage;因此,您可以看到错误消息。您可以显示异常吗?捕获异常$e{print\r$e;}错误。。。是的。。那就是:libcurl中不支持或禁用https协议,这看起来更容易理解!这意味着什么…?您系统上的libcurl库不是使用HTTPS支持编译的。联系您的系统管理员,让他们使用HTTPS支持的libcurl重新编译。因为我使用免费主机。。。有什么办法吗?找个更好的主持人?你也许可以破解Facebook库,使其不使用HTTPS,但我不知道Facebook是否会支持这一点。