Искать  
 
   
 
Загрузка файлов
Отправлено: 07 Август 2010 10:15 P.M.   [ Игнорировать ]
Новичок
Avatar
Rank
Всего сообщений:  19
Зарегистрирован  2009-02-26

1.6.8. При загрузке файлов через стандартную форму в имена файлов добавляется нижнее подчеркивание.

Пример: файл 123.pdf, после загрузки будет 123_.pdf

Кто знает почему, и как это исправить? Заранее благодарен.

Профиль
 
 
Отправлено: 07 Август 2010 10:27 P.M.   [ Игнорировать ]   [ # 1 ]
Новичок
Avatar
Rank
Всего сообщений:  19
Зарегистрирован  2009-02-26

и это еще не все, имя файла типа 01-01-1.0_1.1-01.pdf меняется на 01-01-1.0_1_.1-01_.pdf

т.е. два нижних подчеркивания

Профиль
 
 
Отправлено: 08 Август 2010 05:53 A.M.   [ Игнорировать ]   [ # 2 ]
Member
Avatar
RankRankRank
Всего сообщений:  325
Зарегистрирован  2008-06-16

А такое только с цифрами в имени или с буквами тоже?

Попробуй CP-панели: Главная  ›  Админ.  ›  Администрирование блогов  ›  Глобальные настройки блога  ›  Разделитель слов в URL-заголовках

 Подпись 

Всё что делается - не всё нами принимается...

Профиль
 
 
Отправлено: 08 Август 2010 09:29 A.M.   [ Игнорировать ]   [ # 3 ]
Новичок
Avatar
Rank
Всего сообщений:  19
Зарегистрирован  2009-02-26

Спасибо за ответ. В качестве разделителя URL_TITLE стоит “_”, изменение на “-” ничего не дало при загрузке файлов. Так же добавляется подчеркивание. Добавляются независимо от названия (буквы или цифры),  после точки, как будто имя файла разделяется.

Профиль
 
 
Отправлено: 08 Август 2010 04:22 P.M.   [ Игнорировать ]   [ # 4 ]
Новичок
Avatar
Rank
Всего сообщений:  19
Зарегистрирован  2009-02-26

Нет больше идей?

Профиль
 
 
Отправлено: 09 Август 2010 09:30 P.M.   [ Игнорировать ]   [ # 5 ]
Новичок
Avatar
Rank
Всего сообщений:  19
Зарегистрирован  2009-02-26

Разобрался. Эта фишка пошла с 1.6.0.

См.
Prevents possible script execution from Apache’s handling of files multiple extensions
http://httpd.apache.org/docs/1.3/mod/mod_mime.html#multipleext

Если аплоадеры надежные, то фиксится в core.upload.php:

комментируем function _prep_filename($filename

+

/*        $this->file_name = $this->_prep_filename($_FILES['userfile']['name']); */
        
$this->file_name $_FILES['userfile']['name']
Профиль
 
 
Отправлено: 09 Август 2010 10:51 P.M.   [ Игнорировать ]   [ # 6 ]
Sr. Member
RankRankRankRank
Всего сообщений:  987
Зарегистрирован  2008-09-27

Я бы посмотрел эту фукнцию лучше. А что делать с русскими файлами?

Профиль
 
 
Отправлено: 10 Август 2010 08:38 P.M.   [ Игнорировать ]   [ # 7 ]
Новичок
Avatar
Rank
Всего сообщений:  19
Зарегистрирован  2009-02-26

Русские имена файлов лучше не использовать.

Хотя, я вынужден отдавать некоторое количество файлов с названиями из русских букв, да еще с пробелами. Но я не загружаю их руками (т.к. их тысячи три). Просто раздавать нормально, но нужно учитывать кодировку файловой системы (локаль) и кодировку страниц.
У меня база в cp1251, страницы отдаю в utf-8, а локаль на FreeBSD вообще по умолчанию koi-r. Все работает на ура, главное чтоб имена файлов русские в системе были в utf-8 тоже.

Профиль