1

Тема: Не отображается русский язык в базе данных.

Добрый день! Я перевожу на русский язык cms. Во всех файлах движка поменял кодировку на Windows-1251, а базу создал в кодировке cp1251 general ci. Но когда я добавляю комментарий  или пост на форуме то отображаются вопросительные знаки. Так же и базе данных.
До этого на сайте была кодировка iso-8859-1. Помогите пожалуйста.

2 (изменено: DmitryV, 2010-10-11 13:24:02)

Re: Не отображается русский язык в базе данных.

kunnka
найти в скрипта SET NAMES и исправить кодировку, если нет SET NAMES то в скриптах после строк конекта с базой прописать:

mysql_query(SET NAMES 'cp1251');

Далее вовсех шаблонах изменить тег кодовой страницы на

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />

если это не поможет смотрите сам код возможно идет перекодировка перед отправкой в базу.

3 (изменено: kunnka, 2010-10-11 13:33:27)

Re: Не отображается русский язык в базе данных.

SET NAMES нету. Не понял где именно надо прописать mysql_query(SET NAMES 'cp1251'); в файлах cms или в базе данных?

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" /> прописан везде.

4

Re: Не отображается русский язык в базе данных.

kunnka сказал:

mysql_query(SET NAMES 'cp1251'); в файлах cms

в скриптах cms где прописана функция соединения с базой данных сразу после mysql_connect.

5

Re: Не отображается русский язык в базе данных.

Нашёл, но когда прописываю вылетает ошибка.
Вот скрипт

{
    global $global;
    $db = mysql_connect ($global['db_host'], $global['db_user'], $global['db_pass']) or die ("<div style=\"text-align: center;\">Error ! Database connexion failed<br />Check your user's name/password</div>");
    $connect = mysql_select_db($global['db_name'], $db) or die ("<div style=\"text-align: center;\">Error ! Database connexion failed<br />Check your database's name</div>");
}

6

Re: Не отображается русский язык в базе данных.

Добавил эту строку. Теперь вместо вопросительных знаков иероглифы ?????? ????.

7 (изменено: DmitryV, 2010-10-11 14:52:13)

Re: Не отображается русский язык в базе данных.

kunnka сказал:

Добавил эту строку. Теперь вместо вопросительных знаков иероглифы ?????? ????.

это со старыми данными иероглифы добавьте новые данные и ини уже должны быть в нормальной кодировке... (также проверьте правильность выдачи мета тегов на странице в коде html) а старые они в другой, вот и отображаються не верно.

{
    global $global;
    $db = mysql_connect ($global['db_host'], $global['db_user'], $global['db_pass']) or die ("<div style=\"text-align: center;\">Error ! Database connexion failed<br />Check your user's name/password</div>");
    $connect = mysql_select_db($global['db_name'], $db) or die ("<div style=\"text-align: center;\">Error ! Database connexion failed<br />Check your database's name</div>");
    mysql_query(SET NAMES cp1251);
}

Проверьте структуры таблиц где эти данные в полях и общая должна быть 1251
Если в CMS присуствует прекодировка данных то её нужно отключить но для этого нужно видеть вашу CMS и структуры вашей базы.

8

Re: Не отображается русский язык в базе данных.

Могу ли я скинуть вам cms, для того что бы разобраться что не так?

9

Re: Не отображается русский язык в базе данных.

kunnka
Проверьте свой ПМ на форуме.

10

Re: Не отображается русский язык в базе данных.

Отправил.

11

Re: Не отображается русский язык в базе данных.

почему  так тупо всё ,кто скажет???????????

12

Re: Не отображается русский язык в базе данных.

sivka сказал:

почему  так тупо всё ,кто скажет???????????

Опишите ваши трудности подробнее, пожалуйста.