[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Скачка яайла с сервера с подменой имени файла
tim-ua
Мне нужно сделать скачку файла, на сервере файлы лежат с именами 1, 2, 3, итд цифры соответствуют id в базе, мне нужно взять имя файла из базы и подставить файл с ид записи, сейчас делаю так:

PHP
header("Content-Description: File Transfer");
header("content-type: binary/octet-stream");
header('content-disposition: attachment; filename='.$fname);
header("Content-Transfer-Encoding: binary");
$len filesize($file); /* читаем размер*/
header("Content-Length: ".$len); /*выдаем размер */
readfile($file); /* выдаем файл */
exit;


при передаче картинки все ок, если например вердовский файл то он не открывается, пишет каракули. Все облазил предлагают только заменить на header("location:$file"); но тут нельзя подменить имя файла (( плз помогите!



Спустя 19 минут, 14 секунд (31.10.2009 - 19:41) kirik написал(а):
Ну у .doc файлов миме вроде был "application/msword". Попробуйте исправить.. Или вот код, только тоже Content-Type нужно на свой поменять

Спустя 9 минут, 56 секунд (31.10.2009 - 19:51) tim-ua написал(а):
Хедер application/msword тоже не помог:(

Спустя 26 минут, 5 секунд (31.10.2009 - 20:17) tim-ua написал(а):
Тоже самое с раром:

header("Content-Description: File Transfer");

header('Content-type: application/x-rar-compressed');
header("Pragma: public");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Disposition: attachment; filename=".$fname);
echo readfile($file);
exit;

Винрар пишет ошибку.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.