У меня есть веб-форма, которую пользователи заполняют в Интернете. Когда они нажмут кнопку "Отправить", он начнет загрузку файлов для них.
В настоящий момент я обрабатываю форму отправки и создаю подходящий файл для пользователя и запускаю его подходящими заголовками. например,...
header('Content-type: "application/octet-stream"');
header('Content-Disposition: attachment; filename="yourfile.txt"');
header("Content-Transfer-Encoding: binary");
Однако, так как это сразу начинает загрузку, оригинальная форма остается на экране браузером.
Мне бы очень хотелось перейти к экрану "Спасибо" после завершения загрузки (или до начала загрузки). Я знаю, что это возможно, потому что почти каждый загружаемый сайт, который вы посещаете, делает это (обычно, чтобы накачать вас рекламными объявлениями до начала загрузки).
Итак, как мне показать экран "Спасибо", который запускает загрузку через секунду?
Как любое предлагаемое решение влияет на поведение кнопки "Назад", так как я не хочу, чтобы загрузка файла снова не была заполнена?
Я использую PHP на сервере и могу полагаться на Javascript (и jQuery), доступный на клиенте.
Спасибо.