Проблема с кириллицей в FlashChat

Автор yulay, 21 января 2007, 01:21:35

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

yulay

Здравствуйте!

Являюсь одним из админов Сайта болельщиков ХК Салават Юлаев (www.hksalavat.ru)
Сайт построен на движке e107, в него интегрировали FlashChat 4.78. Вроде все работает нормально кроме двух вещей:
1) Кириллические ники отображаются крякозябрами. Насколько я понял админы нашли решение этой проблеме? Помогите плиз.
2) вторая гораздо менее важная: при попытке сохранить хистори чата слова написанные на кириллице отображаются опять таки крякозябрами.

Заранее благодарен!

liman

У меня выявилась только первая проблема с никами, вторую видимо избежал за счет того что весь форум в UTF-8

yulay


SAS

чем тебе помочь то, говорят же, база должна быть в UTF-8, для нормального отображения ников в чате, так что переводи базу на эту кодировку или меняй чат :)

liman

у меня база в UTF-8 и не помогает с никами

SAS

чат интегрировал с joomla ?

там при установке чата задают вопрос про кодировку, точно не помню, но что-то вроде "если у вас в базе имеются ники не только на англицком, то сделайте то-то, а если только на английском, то сделайте то-то", так вот, что ты там выбирал ?

liman

интегрирована в смф , ставил "птичку" использоватьв никах УТФ-8, но не помогло, а может попробовать не ставить?

SAS

Цитата: liman от 01 февраля 2007, 15:41:19
интегрирована в смф , ставил "птичку" использоватьв никах УТФ-8, но не помогло, а может попробовать не ставить?
ага, лагично мыслишь, папробуй нистафь :)

YuraS

Цитата: yulay от 21 января 2007, 01:21:351) Кириллические ники отображаются крякозябрами.
Попробуй так:
1. в файле inc/cmses/e107CMS.php перед
function E107CMS() {вставить// добавка для русских ников
        function rus2utf8( $rus ) {
                // translates these characters from rus win-1251 to UTF-8/Unicode

                $replacements = array( 'а' => 'Р°',
                'А' => 'Рђ',
                'б' => 'Р±',
                'Б' => 'Р'',
                'в' => 'РІ',
                'В' => 'Р'',
                'г' => 'Рі',
                'Г' => 'Р"',
                'д' => 'Рґ',
                'Д' => 'Р"',
                'е' => 'Рµ',
                'Е' => 'Р•',
                'ё' => 'С'',
                'Ё' => 'РЃ',
                'ж' => 'Р¶',
                'Ж' => 'Р–',
                'з' => 'Р·',
                'З' => 'Р—',
                'и' => 'Рё',
                'И' => 'Р?',
                'й' => 'Р№',
                'Й' => 'Р™',
                'к' => 'Рє',
                'К' => 'Рљ',
                'л' => 'Р»',
                'Л' => 'Р›',
                'м' => 'Рј',
                'М' => 'Рњ',
                'н' => 'РЅ',
                'Н' => 'Рќ',
                'о' => 'Рѕ',
                'О' => 'Рћ',
                'п' => 'Рї',
                'П' => 'Рџ',
                'р' => 'СЂ',
                'Р' => 'Р ',
                'с' => 'СЃ',
                'С' => 'РЎ',
                'т' => 'С,',
                'Т' => 'Рў',
                'у' => 'Сѓ',
                'У' => 'РЈ',
                'ф' => 'С,,',
                'Ф' => 'Р¤',
                'х' => 'С...',
                'Х' => 'РҐ',
                'ц' => 'С†',
                'Ц' => 'Р¦',
                'ч' => 'С‡',
                'Ч' => 'Р§',
                'ш' => 'С?',
                'Ш' => 'РЁ',
                'щ' => 'С‰',
                'Щ' => 'Р©',
                'ъ' => 'СЉ',
                'Ъ' => 'РЄ',
                'ы' => 'С‹',
                'Ы' => 'Р«',
                'ь' => 'СЊ',
                'Ь' => 'Р¬',
                'э' => 'СЌ',
                'Э' => 'Р­',
                'ю' => 'СЋ',
                'Ю' => 'Р®',
                'я' => 'СЏ',
                'Я' => 'РЇ');

                return strtr($rus, $replacements);
        }
// конец добавки


2. в этом же файле после $rec['roles'] = isAdmin($rec['user_admin']);добавить // добавка для русских ников
$rv['login'] = $this->rus2utf8($rv['login']);
// конец добавки
Не забудь отписаться здесь, если проблему решишь этим способом. ;)

ckgb

У меня в 1251 кодировка. Есть какой-нибудь способ, чтобы имена пользователей отражались по русски, а не �� ? Не меняя кодировки базы SMF, а путем внесения какого-нибудь кода?


SAS


ckgb

Ни как не разберусь ка назначать модераторов в этом чате