我有一个处理来自付款服务提供商的付款的脚本,然后使用PHP
重定向来显示“谢谢”页面。
来源:( Websend.php包括来源:http://pastebin.com/raw.php?i=TmmysJiD)
include_once 'Websend.php';
if ($file != "GREAT") {
header("Location: ../failed.html");
exit();
} else {
$ws = new Websend("192.168.56.105");
$ws->connect("passwd");
$ws->doCommandAsConsole("give " . $token . " 2000");
$ws->disconnect();
header('Location: ../success.html');
exit();
}
success.html的来源
<head>
<meta http-equiv="refresh" content="0; url=http://site.com/index.html">
</head>
<script type="text/javascript">
alert("Some alert");
</script>
但是header("Location: ../success.html");
导致命令运行两次(并且给用户两次,这不应该发生。
当我删除header("Location: ../success.html");
代码时,代码可以正常工作。
为什么会这样?
答案 0 :(得分:1)
这是令人耳目一新的success.html
<meta http-equiv="refresh" content="0; url=http://site.com/index.html">
<强> EDITED 强>
您是否尝试删除<meta http-equiv="refresh" content="0; url=http://site.com/index.html">
?同时尝试将header('Location: ../success.html');
更改为header('Location: ../index.html');