|
|
|
| Всем привет!
В общем, суть проблемы такова: есть некоторый файл, инф-ция о котором храниться в БД. Есть ссылка, типа download.php?id=5. При переходе по ссылке, скрипт извлекает данные о файле с id=5, в том числе где он лежит. Какие заголовки нужно передать браузеру, чтобы он предложил сохранить файл? Или это решается другим способом?
Пробовал Location на файл, открывает пустую страницу, в адресной строке - точный путь к файлу. Пробовал Content-Disposition, пытается сохранить текущую html-страницу..
В общем, ничего не понимаю.. В чем может быть проблема?
Вот еще что интересно, при отправке заголовка Location, после открытия пустой страницы, если нажать ввод в адресной строке, где прописан полный пусть к файлу, выводится содержимое файла. Если вернуться на страницу со ссылкой и снова ее нажать, то она нормально срабатывает, предлагая сохранить файл... | |
|
|
|
|
|
|
|
для: to4kaRU
(11.07.2005 в 16:50)
| | А вы сразу после заголовков
<?php
header("Content-Disposition: attachment; filename=$filename");
header("Content-type: application/octet-stream");
print $content;
?>
|
Выводите содержимое файла. | |
|
|
|
|
|
|
|
для: cheops
(11.07.2005 в 18:51)
| | Да, только делал это с помощью
Результат один и тот же.. что при указании функции, что без нее... | |
|
|
|
|
|
|
|
для: to4kaRU
(12.07.2005 в 09:20)
| | Все, благодарю, проблема решена))
Если кому интересно
<?php
$filename = "/downloads/soft/".$soft['section']."/".$soft['file'];
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename=\"".basename($filename)."\"");
header("Content-type: application/octet-stream");
readfile($filename);
?>
|
Сам толком не разобрался что было, вчера какие только варианты не пробовал и этот в том числе... | |
|
|
|