Услуги Частые вопросы Регистрация Панель управления О компании
655340096
maxhosting@jabber.ru

Skype:maxhosting.ru +7 (499) 346-76-29
+380 (94) 711-51-29

Проблемы с кодировкой. Вместо букв отображаются "?" или неверные буквы.

Ответ:

Обычно используется кодировка cp1251. Но бывают исключения: скрипт использует другую кодировку и кодировка cp1251 не подходит.
PHP устроен таким образом, что кодировка жестко задаётся по умолчанию. Ее можно изменить либо пересборкой модуля PHP-MySQL с соответствующими опциями, либо изменив PHP-код.
Поэтому поправьте код Ваших скриптов.
Для этого найдите поиском по файлам Вашего сайта строку "mysql_connect".
После нее вставьте в файл следующие 3 строчки:

mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");

Измените в этих строчках cp1251 на Вашу кодировку (например "latin1", "koi8-r" или "utf8").
Эти 3 запроса устанавливают нужную Вам кодировку.

Если у Вас VPS, то Вы можете изменить кодировку для mysql сервера.

Нужно добавить в секцию [mysqld] следующие строчки (разумеется, вместо latin1 подставляем нужную кодировку):
default-character-set=latin1
character-set-server=latin1
collation-server=latin1_general_ci
init-connect="SET NAMES latin1"
skip-character-set-client-handshake

Часть этих параметров возможно уже определена в секции [mysqld]. Старые параметры нужно убрать.



www.megastock.ru Здесь находится аттестат нашего WM идентификатора 768193018615 © 2007-2017 MaxHosting