ユーザーがオンラインで記入するWebフォームがあります。送信を押すと、ファイルのダウンロードが開始されます。
現時点では、フォームの送信を処理し、ユーザーに適したファイルを生成して、適切なヘッダーで起動します。例えば...
header('Content-type: "application/octet-stream"');
header('Content-Disposition: attachment; filename="yourfile.txt"');
header("Content-Transfer-Encoding: binary");
ただし、これによりダウンロードがすぐに開始されるため、元のフォームはブラウザによって画面に残されます。
ダウンロードが完了したら(またはダウンロードが開始する前に)、「ありがとう」画面に移動したいと思います。あなたが訪問するほとんどすべてのダウンロードサイトがこれを行うので、私はそれが可能であることを知っています(通常、ダウンロードが始まる前にあなたを広告でいっぱいにするために)。
では、1秒後にダウンロードを開始する「ありがとう」画面を表示するにはどうすればよいですか?
フォームを再入力せずにファイルを再度ダウンロードしたくないので、提案されたソリューションは戻るボタンの動作にどのように影響しますか?
私はサーバーでPHPを使用しており、クライアントで使用可能なJavascript(およびjQuery)に依存できます。
ありがとうございました。