支払いプロバイダーからの支払いを処理し、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");
、コマンドが 2 回実行されます (そして、ユーザーに金額が 2 回与えられますが、これは発生しないheader("Location: ../success.html");
はずです。コードを削除すると、正常に動作します。
なぜこれが起こるのですか?