Facebook iframe - 如何发送表格(POST方法)?

时间:2012-09-01 15:48:00

标签: php facebook facebook-graph-api facebook-iframe

我的表单非常简单(文件称为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中的数据。

任何人都可以帮助我,如何解决这个问题?谢谢!

2 个答案:

答案 0 :(得分:2)

试试这个。我不相信你需要在FB canvas aps中使用target了。表格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>

答案 1 :(得分:1)

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