Я создаю xml-файл на лету. Когда пользователь создает этот файл, я хочу, чтобы он открыл диалоговое окно файла загрузки с созданным контентом. Фактического файла нет, потому что он генерируется только через php. Есть идеи, как это сделать?
Отправьте заголовок вложения содержимого .
Это то, что сработало для меня. В readfile('newfile.xml');
не забудьте правильно указать путь к файлу. Эта php-страница вызывается с html-страницы с тегом привязки, который говорит – загрузите:
<?php header('Content-disposition: attachment; filename="newfile.xml"'); header('Content-type: "text/xml"; charset="utf8"'); readfile('newfile.xml'); ?>
source: Как заставить браузер загружать файл на диск вместо воспроизведения или отображения?
header('Content-disposition: attachment; filename=advertise.xml'); header ("Content-Type:text/xml"); //output the XML data echo $xml; // if you want to directly download then set expires time header("Expires: 0");