Перенаправление заголовка после загрузки - PullRequest
0 голосов
/ 11 мая 2011

Я новичок в PHP и изучаю его шаг за шагом. Ну, у меня есть страница загрузки, которую я хочу перенаправить после завершения загрузки.

header('Content-type: application/octet-stream');                 
header('Content-Disposition: attachment; filename="dlink.pdf"');                  
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");                  readfile('dlink.pdf');   
header("refresh: 2; auto_works.html");
exit;

Это мой код загрузки, заключенный в тег PHP. Как я могу достичь своей директивы? Пожалуйста помоги. Не могли бы вы также упомянуть мне, где я должен написать строку кода

Спасибо

Ответы [ 3 ]

1 голос
/ 11 мая 2011

Вы не можете перенаправить после завершения загрузки.Веб-сервер (который будет выполнять перенаправление) не знает, когда загрузка будет завершена.Есть, конечно, пути, но они трудны и не стоят того.

Вы должны «перенаправить» после начала загрузки.

0 голосов
/ 11 мая 2011

Это невозможно с чистым HTTP.Либо вы отвечаете на запрос пользователя ответом на загрузку, либо ответом на перенаправление.

Конечно, вы можете выполнить некоторые сценарии на стороне клиента и сделать две вещи одновременно - например, открыть всплывающее окно, ведущее к загрузке файла.и одновременно загрузить новую страницу в исходное окно.Но я не рекомендую вам делать это, потому что это не удобно для пользователя и может вообще не работать с некоторыми конфигурациями.

0 голосов
/ 11 мая 2011

Попробуйте установить

header("Location: auto_works.html");exit; 

вместо

header("refresh: 2; auto_works.html"); exit;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...