1

我有非常简单的形式(文件称为message.php):

<?php
  print_r($_POST);
?>
<form method="post" target="_top" action="<?php echo CANVAS_URL;?>message.php">
  <input type="text" name="your_name" />
  <input type="hidden" name="signed_request" value="<?php echo $_REQUEST['signed_request'];?>" />
  <input type="submit" name="send" />
</form>

我找到了这个问题的一个解决方案 - 将隐藏输入放入表单signed_request- 我做到了,但不幸的是我仍然面临这个问题 - 我无法检索发送的 POST 数据。

如果我将方法更改为method="get",一切正常,但我需要从 POST 获取数据。

谁能帮助我,如何解决这个问题?谢谢!

4

2 回答 2

2

尝试这个。我认为您不再需要target在 FB 画布应用程序中使用。表单ID也很好。

<form method="POST" id="my_form" action="message.php">
    <input type="text" name="your_name" />
    <input type="hidden" value="<?php print $_POST["signed_request"] ?>" name="signed_request" />
    <input type="submit" name="submit" />
</form>
于 2012-09-01T19:32:45.350 回答
1

根本不支持发布到 Canvas URL(如http://apps.facebook.com/namespace )。但是为什么要发布到顶部窗口而不是简单地留在 iframe 中呢?它更好,因为它不需要重新加载整个页面,只需要重新加载 iframe。

于 2012-09-02T00:21:39.680 回答