我在 php 中有一个 facebook 应用程序,它可以正常工作,没有任何身份验证问题。因此用户登录并且应用程序获得所需的权限并浏览页面。但我有一个名为 sender.php 的页面需要重复 8 次。
所以这是不工作的场景:1)用户在 sender.php 2)他们点击提交,(因为操作表单设置为“sender.php”)浏览器再次显示 sender.php 表单 3)用户再次在文本输入中输入一些内容,然后单击提交按钮 4)一个空白页面显示没有任何内容;(注意,它只适用于第一次点击,第二次它只显示一个空白页面,没有任何错误或通知。)
这是 sender.php 中的 html 代码:(此处使用的第一个 php 代码与其他 php 页面相同,并且可以正常工作)
<?php
require_once("config.php");
require_once("database.php");
require_once("facebook_include1.php");
ini_set('display_errors', 1);
error_reporting(E_ALL);
$me = $facebook->api('/me');
$access_token = $facebook->getAccessToken();
$user = $facebook->getUser();
if (isset($_GET['moneySent'])) {
$moneySent = round($_GET['moneySent']);
$senderBalance = $_GET['balance'];
$senderRate = $_GET['senderRate'];
$receiverRate = $_GET['receiverRate'];
}
?>
<script type="text/javascript">
function validateForm() {
var isValid = true;
var moneySent = document.getElementById("moneySent").value;
var balance = document.getElementById("balance").value;
if (!document.getElementById("moneySent").value.length)
{
delete window.alert;
alert("Please enter an amount you want to send!.");
isValid = false;
}
else if (isNaN(moneySent))
{
delete window.alert;
alert("Please enter a numeric value.");
isValid = false;
}
else if (Math.round(moneySent) > balance) {
delete window.alert;
alert("The amount you want to send should be less than your balance.");
isValid = false;
}
return isValid;
}
</script>
<form action="sender.php" method="get" name="sendFor" onsubmit="return validateForm();">
<div class="yui-u">
<input type="text" id="moneySent" name="moneySent" style="width:100px"/>
<input type="hidden" name="balance" id="balance" value='<?php echo $senderBalance ?>'/>
<input type="hidden" name="senderRate" id="senderRate" value='<?php echo $senderRate ?>'/>
<input type="hidden" name="receiverRate" id="receiverRate" value='<?php echo $receiverRate ?>'/>
</div>
<div class="yui-u">
<input type="submit" name="btnsearch" id="btnsearch" value=" Send > " class="search" style="margin-left:-6.5px" /><br />
</div>
</form>
任何想法都非常感谢。我正在使用 php5 和 apache 以及最新的 facebook sdk for php。
更新:我已经在 Firefox 中进行了测试。但是,如果我使用 IE8 并将 target="_blank" 添加到表单标签中,页面将超出 facebook 画布但开始正常工作,知道吗?