我使用 facebook php-sdk 编写了facebook app。我想将它整合到有趣的页面。因此,当用户首先访问我的应用程序时,他必须单击按钮然后使用应用程序。我使用var_dump()
函数查看在加载应用期间$like_status
变量会发生什么。首先$like_status = false
,因为用户没有点击按钮,但是当用户点击按钮页时重新加载,$like_status
变量变为NULL
,页面加载相同的图片,没有像tab一样的页面。我认为我的网页重新加载了两次,$like_status
变量变为NULL
。这是我的申请链接https://www.facebook.com/pages/Tasty-Applications/456339624439381?id=456339624439381&sk=app_570550412956864。我希望我的问题清晰可读。我需要帮助。这是我的代码。
<?php
require_once('facebook.php');
$app_id = 'app_id';
$my_url = "https://apps.facebook.com/losts_app/";
$config = array(
'appId' => 'app_id',
'secret' => 'app_secret',
'fileUpload' => true,
'cookie' => true,
);
$facebook = new Facebook($config);
$signed_request = $facebook->getSignedRequest();
$like_status = $signed_request["page"]["liked"];
$code = $_GET["code"];
if($like_status)
{
session_start();
$code = $_GET["code"];
if(empty($code))
{
$dialog_url = "https://www.facebook.com/dialog/oauth?client_id="
. $app_id . "&redirect_uri=" . urlencode($my_url) . "&state="
. $_SESSION['state']."&scope=read_stream, user_photos, publish_stream";
echo("<script> top.location.href='" . $dialog_url . "'</script>");
}
else {
//here is my application main content...
}
}
else
{
echo('<image src="Like.jpg" />');
// Here is content that must encourage user to like the page
}
?>