Php Fan gate facebook选项卡在重新加载时不起作用

Php Fan gate facebook选项卡在重新加载时不起作用,php,facebook,facebook-apps,facebook-tabs,Php,Facebook,Facebook Apps,Facebook Tabs,我有一个fan-gated的Facebook标签,使用以下代码: <?php require 'facebook.php'; $app_id ="APP_ID"; $app_secret ="APP_SECRET"; $facebook = new Facebook(array( 'appId' => $app_id, 'secret' => $app_secret, 'cookie' => true )); $sign

我有一个fan-gated的Facebook标签,使用以下代码:

<?php
  require 'facebook.php';

  $app_id ="APP_ID";
  $app_secret ="APP_SECRET";
  $facebook = new Facebook(array(
    'appId' => $app_id,
    'secret' => $app_secret,
    'cookie' => true
  ));

  $signed_request = $facebook->getSignedRequest();
  $like_status = $signed_request["page"]["liked"];

?>

<?php if ($like_status) { ?>



  <?php } else { ?>

    Page overlay hides page content for non-fans.

<?php } ?>

Page content here...
该应用程序允许用户使用method=post提交表单。提交表单时,将重新加载页面,并显示一条成功消息,而不是表单。URL不会更改

然而,问题是,当表单提交时,页面覆盖是可见的,即使页面很受欢迎

在提交表单之前,like-gate可以很好地显示/隐藏页面的覆盖

任何帮助都将不胜感激。谢谢

最好的, Alexander

签名的\u请求仅在第一次加载到iframe时传递给应用程序

为了保持该值,需要将其保存到会话变量中

您可以为已经喜欢URL的用户在表单中添加一个参数,以便服务器在解析表单时能够知道该用户是否喜欢URL

<p>Hey, check out my fiddle, should give you a big help.</p>

谢谢你的回答。你能给我一个例子说明如何在表单中附加这样一个参数吗?谢谢:@mrcarlsen-您可以使用隐藏的输入字段。您需要在页面加载后将值插入到输入中——为此,您需要一些JavaScript,但这已经是另一个问题了