1

我已经使用facebook php-sdk编写了 facebook 应用程序。我想将它集成到有趣的页面。所以当用户首先去我的应用程序时,他必须点击喜欢按钮然后使用应用程序。我使用该var_dump()函数来查看在应用程序加载期间变量会发生什么情况$like_status。起初$like_status = false,因为用户没有点击喜欢按钮,但是当用户点击喜欢按钮时页面重新加载并且$like_status变量变为NULL并且页面加载相同的图片而没有像标签一样的页面. 我认为我的页面重新加载了两次并且$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
}
?>
4

0 回答 0