Назад

Отображение русских ников в топах,менюшках, etc.

Автор: Leydor: Дата: 03.21.2011

Всем привет! Мучаюсь с этой проблемой не первый день. начну по порядку с того что пытался сделать :)

1. Исходя из темы, пытался заменить кодировку. Вставлял предложенные строки везде где, как мне казалось, производился коннект к базе. Поиск по mysql_connect ничего не дал, результатов не обнаружилось, поэтому куда точно нужно поставить это выражение я не знаю.

2. Пытылся сделать как по гайду для CeresCP. Нашёл вывод ника в топе:
Вот в этом кусочке, как я понял происходит вывод ника:


name) ?>


Вот как выглядит руссификация в церес:
$charname = htmlformat($line[0]);
меняеться на:
$charname = htmlspecialchars(mb_convert_encoding($line[0], "CP-1251", "CP-1251"));

как это сделать в моём случае? пытался по-разному:
htmlspecialchars(mb_convert_encoding($guilds[$i], "CP-1251", "CP-1251",->name))

htmlspecialchars(mb_convert_encoding($guilds[$i], "CP-1251", "CP-1251")->name);

htmlspecialchars(mb_convert_encoding($guilds[$i], "CP-1251", "CP-1251"->name));

при всех попытках происходит одно и то же: страничка отрисовываеться, таблица топа отрисовываеться, но заполнения никакого нет.

вобщем, буду рад любой помощи и подсказке.

во вложении лежит полный пример модуля топа гильдий и странички вывода, возможно вы сможете найти там что-то чего не заметил я.

Автор: Leydor: Дата: 03.21.2011

$guilds[$i] - моя переменная, выдающая название гильдии, но проблема в том что в оригинале она выглядит вот так:
$guilds[$i]->name
как правильно её преобразовать в нужную строку?

Автор: Heavenanvil: Дата: 05.16.2011

Везде выставил нужную кодировку, но все равно текст выводится кракозябрами.
Кто-нибудь объясните подробно, как сделать, чтобы допустим в сайдбаре показывало русскими буквами?

Автор: Bot v.2.0.135: Дата: 05.28.2011

Правильнее будет:

$charname = htmlspecialchars(mb_convert_encoding($line[0], "UTF-8", "Windows-1251"));

У тебя инфо хранится в Windows-1251, а надо преобразовать в UTF-8, а ты преобразовываешь из Windows-1251 в Windows-1251, хотя сайт показывается в UTF-8.

Для твоего случая:

htmlspecialchars(mb_convert_encoding($guilds[$i]->name, "UTF-8", "Windows-1251"));