Разделы

  
 

Битая кириллица в именах загружаемых файлов.

Многие unix-сервера не понимают кириллистические символы в имени файлов, картинок.

Можно ли автоматически переименовывать или транслитировать загружаемые через менеджер файлов файлы? Кто и как решает данную проблему?

Либо, как вообще запретить загрузку файлов с кириллицей в имени?

необходимо сделать страницу, псевдоним которой содержит %

помогите пожалуйста
На старом сайте поддерживались кириллические псевдонимы в url
В итоге они потом преобразовывались в например такое:
%D3%EA%EB%E0%E4%EA%E0%ED%E0%F1%F2%E8%EB%EB%E8%ED%EE%EB%E5%F3%EC%E0.aspx

Перенесли сайт на modx, перенесли домен. Но оказалось, что здесь нельзя создать страницы со знаком %

Спасибо.

А кто-нибудь уже делал транслитерацию кириллицы в именах при загрузке изображений в EvoGallery?

Добрый день!
Собственно вопрос в заголовке.
Кто-нибудь уже допиливал EvoGallery для загрузки изображений с кириллицей в названии?
Если да, то поделитесь пожалуйста измененными файлами или хотя-бы списком файлов, в которые вносились изменения.

Ну т.е. куда там нужно вставить какую-то такую функцию, так чтобы все нормально работало:

function niceFilename($filename) {
    $changes = array(
        "Є"=>"EH", "І"=>"I", "і"=>"i", "№"=>"#", "є"=>"eh",
        "А"=>"A", "Б"=>"B", "В"=>"V", "Г"=>"G", "Д"=>"D",
        "Е"=>"E", "Ё"=>"E", "Ж"=>"ZH", "З"=>"Z", "И"=>"I",
        "Й"=>"J", "К"=>"K", "Л"=>"L", "М"=>"M", "Н"=>"N",
        "О"=>"O", "П"=>"P", "Р"=>"R", "С"=>"S", "Т"=>"T",
        "У"=>"U", "Ф"=>"F", "Х"=>"H", "Ц"=>"C", "Ч"=>"CH",
        "Ш"=>"SH", "Щ"=>"SCH", "Ъ"=>"", "Ы"=>"Y", "Ь"=>"",
        "Э"=>"E", "Ю"=>"YU", "Я"=>"YA", "Ē"=>"E", "Ū"=>"U",
        "Ī"=>"I", "Ā"=>"A", "Š"=>"S", "Ģ"=>"G", "Ķ"=>"K",
        "Ļ"=>"L", "Ž"=>"Z", "Č"=>"C", "Ņ"=>"N", "ē"=>"e",
        "ū"=>"u", "ī"=>"i", "ā"=>"a", "š"=>"s", "ģ"=>"g",
        "ķ"=>"k", "ļ"=>"l", "ž"=>"z", "č"=>"c", "ņ"=>"n",
        "а"=>"a", "б"=>"b", "в"=>"v", "г"=>"g", "д"=>"d",
        "е"=>"e", "ё"=>"e", "ж"=>"zh", "з"=>"z", "и"=>"i",
        "й"=>"j", "к"=>"k", "л"=>"l", "м"=>"m", "н"=>"n",
        "о"=>"o", "п"=>"p", "р"=>"r", "с"=>"s", "т"=>"t",
        "у"=>"u", "ф"=>"f", "х"=>"h", "ц"=>"c", "ч"=>"ch",
        "ш"=>"sh", "щ"=>"sch", "ъ"=>"", "ы"=>"y", "ь"=>"",
        "э"=>"e", "ю"=>"yu", "я"=>"ya", "Ą"=>"A", "Ę"=>"E",
        "Ė"=>"E", "Į"=>"I", "Ų"=>"U", "ą"=>"a", "ę"=>"e",
        "ė"=>"e", "į"=>"i", "ų"=>"u", "ö"=>"o", "Ö"=>"O",
        "ü"=>"u", "Ü"=>"U", "ä"=>"a", "Ä"=>"A", "õ"=>"o",
        "Õ"=>"O");
    $alias=strtr($filename, $changes);
    $alias = strtolower( $alias );
    $alias = preg_replace('/&.+?;/', '', $alias); // kill entities
    $alias = str_replace( '_', '-', $alias );
    $alias = preg_replace('/[^a-z0-9\s-.]/', '', $alias);
    $alias = preg_replace('/\s+/', '-', $alias);
    $alias = preg_replace('|-+|', '-', $alias);
    $alias = trim($alias, '-');
    return $alias;
}

Заранее спасибо!
  • 0
  • 20 апреля 2011, 13:34
  • ivc
  • 7