диалог загрузки текстового файла

DriverCat
На сайте с 10.04.2008
Offline
116
937

Помогите, как правильно сделать ссылку на текстовый файл, чтобы браузер предлагал сохранить его, а не выводил бы сразу его содержимое в окно.

D
На сайте с 09.07.2009
Offline
79
#1

<?php

$fn01 = $_GET['fn01']; //$fn01 = 'Файл для сохранения.txt';
$len = filesize($fn01);
header("Content-Length: $len;");
header("Content-Transfer-Encoding: binary");
header('Content-Disposition: attachment; filename="'.rawurldecode($fn01).'"');
readfile($fn01);
die;
?>
DriverCat
На сайте с 10.04.2008
Offline
116
#2
digwnews:
<?php

$fn01 = $_GET['fn01']; //$fn01 = 'Файл для сохранения.txt';
$len = filesize($fn01);
header("Content-Length: $len;");
header("Content-Transfer-Encoding: binary");
header('Content-Disposition: attachment; filename="'.rawurldecode($fn01).'"');
readfile($fn01);
die;
?>

у меня почему то сохраняется вся веб страница

firefox19
На сайте с 05.11.2009
Offline
34
#3

header('Content-Type: text/plain; charset=windows-1251');
header("Content-Disposition: attachment; filename=...");

далее отдаете текст файла

Ваши идеи - наша работа (http://yaweb.ru) Продам Сайт агентства недвижимости (/ru/forum/561489)
DriverCat
На сайте с 10.04.2008
Offline
116
#4
firefox19:
далее отдаете текст файла

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

firefox19
На сайте с 05.11.2009
Offline
34
#5
Что я не так делаю-то?

Возможно в filename пишите текущую страницу, а надо писать произвольное название

DriverCat
На сайте с 10.04.2008
Offline
116
#6
firefox19:
Возможно в filename пишите текущую страницу, а надо писать произвольное название

Вот код:

header('Content-Type: text/plain; charset=utf-8');

header("Content-Disposition: attachment; filename=office_rent.csv");
readfile($_SERVER['DOCUMENT_ROOT']."/link_files/office_rent.csv");
firefox19
На сайте с 05.11.2009
Offline
34
#7

начнем с того что у Вас вообще CSV...


header('Content-Type: text/csv; charset=utf-8');
header("Content-Disposition: attachment; filename=office_rent_down.csv");
file_get_contents($_SERVER['DOCUMENT_ROOT']."/link_files/office_rent.csv");

как-то так

DriverCat
На сайте с 10.04.2008
Offline
116
#8
firefox19:
начнем с того что у Вас вообще CSV...


как-то так

поменял, то же самое....

DriverCat добавил 03.11.2010 в 09:04

не знаю как еще можно сделать... уже всю голову сломал.

DriverCat добавил 03.11.2010 в 12:38

Разобрался - просто надо было перед выводом содержимого файла очистить буфер вывода , то есть

ob_clean();

и все стало ОК!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий