General > Русский (ru)

Кодировка utf8 для русского языка

(1/2) > >>

popovich_ai:
Подскажите пожалуйста, кто знает.

Для установленной русской локализации в админской части все даты отображаются вместо названий месяцев кракозяброй. Как такое починить? Я понимаю, что нужно какой-то файл перебить в кодировку utf8, но не могу понять, что это за файл будет?

Inspirer:
Проблема в установленных локалях на сервере. По умолчанию, для русского используется ru_RU.UTF-8.

Чтобы поменять: Управление -> Локализация -> строка time.locale

Например, у меня доступны следующие локали:

~$ locale -a | grep ru
ru_RU
ru_RU.CP1251
ru_RU.CP866
ru_RU.ISO8859-5
ru_RU.KOI8-R
ru_RU.UTF-8

popovich_ai:
странно, но у меня только такое:

ru_RU  и все:(

Inspirer:
1. Можно доставить локалей (зависит от сервера).
2. Можно поставить en_US (только месяца/дни недели будут по английски)
3. libs/common.php, примерно, строка 549:

 return strftime($date_format." ".getlocal("time.timeformat"), $unixtime);

поменять на

 return myiconv("cp1251", "utf-8", strftime($date_format." ".getlocal("time.timeformat"), $unixtime));

Если не поможет, можно попробовать поменять cp1251 на другие кодировки, но только если у вас в PHP установлен iconv. Это видно на странице обновления, у меня так:

Окружение:
PHP 5.2.9 mysql/1.0 gd iconv

popovich_ai:
Сделал проще - заменил буквенное отображение на цифровое:


--- Code: ---return date('d.m.Y H:i', $unixtime);
--- End code ---

Теперь бы еще найти, в каком файле выводится дата для фильтрации статистики, чтобы и там такое же поставить...

Navigation

[0] Message Index

[#] Next page

Go to full version