Mibew Messenger Community

General => Support => Русский (ru) => Topic started by: popovich_ai on March 17, 2011, 11:07:45 AM

Title: Кодировка utf8 для русского языка
Post by: popovich_ai on March 17, 2011, 11:07:45 AM
Подскажите пожалуйста, кто знает.

Для установленной русской локализации в админской части все даты отображаются вместо названий месяцев кракозяброй. Как такое починить? Я понимаю, что нужно какой-то файл перебить в кодировку utf8, но не могу понять, что это за файл будет?
Title: Re: Кодировка utf8 для русского языка
Post by: Inspirer on March 17, 2011, 08:41:39 PM
Проблема в установленных локалях на сервере. По умолчанию, для русского используется 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
Title: Re: Кодировка utf8 для русского языка
Post by: popovich_ai on March 18, 2011, 10:51:56 AM
странно, но у меня только такое:

ru_RU  и все:(
Title: Re: Кодировка utf8 для русского языка
Post by: Inspirer on March 18, 2011, 11:37:32 AM
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

Title: Re: Кодировка utf8 для русского языка
Post by: popovich_ai on March 18, 2011, 11:55:25 AM
Сделал проще - заменил буквенное отображение на цифровое:

Code: [Select]
return date('d.m.Y H:i', $unixtime);
Теперь бы еще найти, в каком файле выводится дата для фильтрации статистики, чтобы и там такое же поставить...
Title: Re: Кодировка utf8 для русского языка
Post by: SergLI on March 23, 2011, 07:18:48 AM
Доброго дня всем,
Я думаю, что вопрос из этой же темы: Как и где можно правильно перекодировать время на местное часовое время (напр. мне нужно GMT+02:00) вместо часового пояса сервера (именно для этой проги имею ввиду)?
Буду очень признателен за подсказку  :)
Title: Re: Кодировка utf8 для русского языка
Post by: MSK on March 23, 2011, 08:42:01 AM
В админке, если имена операторов на русском языке и кодировка 1251 - в списке ператоров онлайн кракозябры.
и нет в шаблонах:
<meta http-equiv="Content-Type" content="text/html; charset=XXXXX" />
Title: Re: Кодировка utf8 для русского языка
Post by: fade on April 10, 2012, 02:02:52 PM
Теперь бы еще найти, в каком файле выводится дата для фильтрации статистики, чтобы и там такое же поставить...

Так никто и не нашел решения?