ё и другие русские буквы при закачке файла

Prolix

Новичок
ё и другие русские буквы при закачке файла

На ОС FreeBSD 4.10 возникает следующая проблема: при попытке через веб-форму закачать файл, в оригинальном названии которого есть русские символы, закачивается он успешно и его название (такое же) так же успешно фигурирует на сервере, если его просматривать каким-нибудь FTP-клиентом. Однако через web файл недоступен (not found). Проблем с латинскими названиями нет.

В $HTTP_POST_FILES['domfile']['name'] я попытался заменять все русские символы на латинские, и тут опять возникла проблема с маленькой буквой "ё" - ну никак она не хочет меняться. И код ее соответствующий тоже.

Кто-нибудь сталкивался с подобными вещами? Цель одна - чтобы закачанный файл читался на вебе.
 

Фанат

oncle terrible
Команда форума
с какой стати проблема с опечаткой при замене одной буквы на другую размещена в форуме для профи под заголовком "проблемы с аплоадом"?

приводи свой код замены - исправим.
 

Prolix

Новичок
$rus='ёйцукенгшщзхъфывапролджэячсмитьбюЁЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ';
$eng='Xjcukengszzhjfivaproldzejcsmitxbqjjcukengszzhjfivaproldzejcsmitxbq';
$rusArr=array(); $engArr=array();
for($i=1;$i<=strlen($rus);$i++) { $rusArr[]=$rus[$i];$engArr[]=$eng[$i];}
$nom=str_replace($rusArr,$engArr,$nom);


/* $nom - имя файла */

В принципе, уже понятно, что проблема в Apache, если кодировка там по умолчанию ISO, то русские символы в имени файла заменяются на уникодовские (например, ё меняется на & #1105; ), но вот почему не меняется именно ё, непонятно, всякие вариации наподобие chr(184) тоже не помогают (все остальное в коде, кроме ё, работает).
 
Сверху