2010-04-23 6 views
3

Я создаю xml-файл на лету. Когда пользователь создает этот файл, я хочу, чтобы он открыл диалоговое окно файла загрузки с созданным контентом. Фактического файла нет, потому что он генерируется только через php. Есть идеи, как это сделать?php force загрузить xml

ответ

5

Отправить content-disposition attachment Заголовок.

+0

Вы, очевидно, техника его подводит читали мой пост. Нет фактического файла для чтения. Он просто отправляется на страницу, и я не хочу, чтобы создать файл, просто чтобы загрузить то, что он генерирует. – ngreenwood6

+0

@ngreen, вы явно не читали связанную статью. установить указанный заголовок и вывести данные xml. – Amarghosh

+0

oh nice Я думал, что вам действительно нужно было назначить этот файл ... спасибо за информацию – ngreenwood6

13

Это то, что сработало для меня. В readfile('newfile.xml'); убедитесь, что вы правильно указали путь к файлу. Эта страница PHP вызывается из HTML-страницы с тегом анкера, который говорит - скачать:

<?php 
header('Content-disposition: attachment; filename="newfile.xml"'); 
header('Content-type: "text/xml"; charset="utf8"'); 
readfile('newfile.xml'); 
?> 

Источник: How do I force the browser to download a file to disk instead of playing or displaying it?

0
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"); 
+0

, пожалуйста, также добавьте описание для понимания пользователем – Cris

Смежные вопросы