Перейти к содержимому


Фотография
- - - - -

Элемент download только у меня имеет проблему с загрузкой русских символов?


Лучший Ответ fiction13 , 12 December 2014 - 20:09

Файл /administrator/components/com_zoo/classes/validator.php, функция clean(), строка 512.

$value['name'] = JFile::makeSafe($value['name']);

Думаю, что смысл понятен, вызывается встроенная функция Joomla - makeSafe() и обрезает все стремные символы, в том числе и кириллицу.

Перейти к сообщению


  • Закрытая тема Тема закрыта
Сообщений в теме: 21

#11 hasanchemerzaev

hasanchemerzaev

Отправлено 12 December 2014 - 14:22

В общем ​Ёшкин Кот делай что посчитаешь нужным


  • 0

#12 Ёшкин Кот

Ёшкин Кот

Отправлено 12 December 2014 - 18:35

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

 

протокол_испытаний_brugman.pdf например при скачивании отдается как:

 

__brugman.pdf .

 

Соответственно все что с русскими символами и brugman выдается почти одинаковым. __brugman.pdf, _brugman.pdf, __brugman-2.pdf... и так далее. если скачать все в одну папку - потом не поймешь что ты скачивал.

 

Хотя бы покажите ГДЕ обрабатывается имя, чтобы я мог добавить перед этим моментом транслитерацию. Это все решит. я см уже второй день копаю. Не справляюсь сам.


Сообщение отредактировал Ёшкин Кот: 12 December 2014 - 18:54

  • 0

#13 Cheren-dow

Cheren-dow

Отправлено 12 December 2014 - 19:11

Ёшкин Кот,готового решения нет. Я же вам написал что список выводится через метод files, который в свою очередь вызывает метод ls который так же находится в этом файле. Разбирайте метод ls - как он работает, так как именно он циклически выводит списки файлов / папок


  • 0
Изображение
 

#14 Ёшкин Кот

Ёшкин Кот

Отправлено 12 December 2014 - 19:16

я просто не на столько знаю это php, чтобы так легко найти место, в котором перед сохранением файла происходит кастрация символов. Еслине сложно, я вчера весь вечер копал этот файл.. но так и не понял. В нем имя везде уже ходит обрубленное, а в самом элементе его еще раз можно поменять (например добавив к нему дату.. там где происходит проверка перед сохранением на наличие такого файла на сервере и добавление к имени счетчика).. но вот когда именно из протокол_испытаний_brugman.pdf оно превращается в __brugman.pdf хоть тресните не могу найти. чтобы перехватить этот момент.


Сообщение отредактировал Ёшкин Кот: 12 December 2014 - 19:17

  • 0

#15 Cheren-dow

Cheren-dow

Отправлено 12 December 2014 - 19:22

в котором перед сохранением файла происходит кастрация символов.
 

Ёшкин Кот, этот метод только выводит файлы а не сохраняет. 


  • 0
Изображение
 

#16 Ёшкин Кот

Ёшкин Кот

Отправлено 12 December 2014 - 19:24

Мне надо выловить, где происходит кастрация неугодных символов перед сохранением файла, Я хочу добавить там скрипт транслитерации. Я же говорю вчера там проколупался весь вечер - не нашел..  не удивительно.


  • 0

#17 Cheren-dow

Cheren-dow

Отправлено 12 December 2014 - 19:30

Если вы эти манипуляци хотите сделать для фронта, тогда смотрите сам элемент

сайт\media\zoo\elements\download\download.php

Перед сохранением в подаче, можете дописать метод submissionBeforeSave - где сделаете транслит. Но опятьже своими силами.


я просто не на столько знаю это php

Если вы не справляетесь своими силами, попробуйте обратиться в коммерческий  раздел.


  • 0
Изображение
 

#18 Ёшкин Кот

Ёшкин Кот

Отправлено 12 December 2014 - 19:30

я пытаюсь именно его и колупать.. но что то пока без результата. Изначально его смотрел.


  • 0

#19 fiction13

fiction13

Отправлено 12 December 2014 - 20:09   Лучший Ответ

Файл /administrator/components/com_zoo/classes/validator.php, функция clean(), строка 512.

$value['name'] = JFile::makeSafe($value['name']);

Думаю, что смысл понятен, вызывается встроенная функция Joomla - makeSafe() и обрезает все стремные символы, в том числе и кириллицу.


  • 0

#20 hasanchemerzaev

hasanchemerzaev

Отправлено 12 December 2014 - 20:19

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

Мой элемент, просто сделает транслитерацию русского названия например протокол_испытаний_brugman.pdf приводится вот к такому виду protokol_ispytanij_brugman.pdf

 

 

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


Сообщение отредактировал hasanchemerzaev: 12 December 2014 - 20:20

  • 0




Click to return to top of page in style!