Скачать файл

Статус
Закрыто для дальнейших ответов.

FiRеFоX

V.I.P.
Регистрация
07.08.2010
Сообщения
744
Вот допустим есть на странице какой-то текст, например описание чего либо, которое достается из базы или ещё откуда(не важно). Как отдать этот текст в виде файла? Ну типа кнопки "Сохранить как txt", "Сохранить как pdf" и подобные.. Как сделать подобную кнопку?
Думаю, что через гет указать id этого описания, а также тип сохранения(txt,pdf). Затем после перехода на эту страницу уже отдавать файл. Но как? У меня, например, txt файлы открываются на странице, а не отдаются на скачку и к тому же не представляю как сделать этот текст в другой вид файла(( Подмогите?:)
 

lekzd

parse error: parse error, unexpected T_STRING...
Регистрация
17.02.2011
Сообщения
1 125
Код:
// Будем передавать PDF
header('Content-type: application/pdf');
// Который будет называться downloaded.pdf
header('Content-Disposition: attachment; filename="downloaded.pdf"');
// Исходный PDF файл original.pdf
readfile('original.pdf');
вместо readfile можно через echo выводить что угодно и оно сохранится с указанным именем, http://php.net/manual/ru/function.header.php - тут можно прочитать про разные заголовки
 

FiRеFоX

V.I.P.
Регистрация
07.08.2010
Сообщения
744
Код:
// Будем передавать PDF
header('Content-type: application/pdf');
// Который будет называться downloaded.pdf
header('Content-Disposition: attachment; filename="downloaded.pdf"');
// Исходный PDF файл original.pdf
readfile('original.pdf');
вместо readfile можно через echo выводить что угодно и оно сохранится с указанным именем, http://php.net/manua...tion.header.php - тут можно прочитать про разные заголовки
А у меня на сервере ничего чистить не нужно будет? Может временный файл какой-то создается для скачки?
 

lekzd

parse error: parse error, unexpected T_STRING...
Регистрация
17.02.2011
Сообщения
1 125
нет, сервер ничего не создает, через echo он просто отдает поток, а так как перед ним хедеры, то он воспринимается как файл
 
Статус
Закрыто для дальнейших ответов.
Верх Низ