|
|
|
| Здравствуйте.
Собственно вопрос в Теме.
Ситуация:
На сервере в папке куча файлов на русском языке с пробелами.
Скрипт выдает на странице ссылки на скачивание.
Браузер (Мозилла, Експлорер) при клике на ссылку выдают ошибку 404.
Как победить проблему? | |
|
|
|
|
|
|
|
для: mmodem
(22.03.2012 в 17:47)
| | Нужно кодировать имя, например при помощи функции rawurlencode(). | |
|
|
|
|
|
|
|
для: cheops
(22.03.2012 в 19:09)
| | Странно, имя файла в ссылке преобразовалось, однако скачиваться не хочет.
Причем файл на латинице с пробелами, в той же папке, преобразовался и скачивается, а русский- нет.
Какое может быть решение? | |
|
|
|
|
|
|
|
для: mmodem
(23.03.2012 в 09:25)
| | Да, вот еще...
В Мозилле, если мышкой "сохранить объект как..." - сохраняет без проблем, а если кликаешь на ссыку файла - 404 выдает.
В Эхплорере - никакие варианты не проходят. | |
|
|
|
|
|
|
|
для: mmodem
(22.03.2012 в 17:47)
| |
$file = ("mashka.rar");
header ("Content-Type: application/octet-stream");
header ("Accept-Ranges: bytes");
header ("Content-Length: ".filesize($file));
header ("Content-Disposition: attachment; filename=TRUEFILENAME);
readfile($file);
|
я делал так:
при загрузке на сервер давал уникальное имя, начальное же хранил в базе.
при скачивании доставалось оригинальное, искался файл с запрошенным и отдавался он же, но с принудительно заданным другим | |
|
|
|
|
|
|
|
для: alexander95
(22.03.2012 в 22:09)
| | Дело в том, что файлы заливаются по FTP, без занесения в базу, поэтому надо "напрямую" обработать файл. Т.е. как я уже писал - скрипт сканирует папку с файлами и выдает на странице список. | |
|
|
|