Я использую следующий код для потоковой передачи pdf-файла в браузер:
header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Pragma: public"); header("Content-type:application/pdf"); header("Content-Disposition:attachment;filename=file.pdf"); echo $pdf;
Работает отлично, за исключением (в любом случае, Chrome), он просто сохраняет файл «file.pdf» – он не запрашивает диалоговое окно «Сохранить как», поэтому я могу переименовать файл, если захочу.
Я подозреваю, что это может быть одна из тех вещей, которые зависят от браузера, но можно ли принудительно активировать диалог «Сохранить как» с заголовками php при потоковой передаче pdf-файла для загрузки?
Заранее спасибо за вашу помощь
У них, скорее всего, есть вопрос, где сохранить каждый файл, прежде чем загружать непроверенные (дополнительные настройки). Если это так, вы ничего не можете сделать, поскольку это их предпочтение.
Это поведение контролируется настройками браузера, поэтому я не думаю, что это способ принудительно открыть диалог «Сохранить как».
Вы можете попробовать не указывать имя файла, но я думаю, что он просто наследует имя скрипта.
Вы можете попробовать:
Content-Type = application/download