Страница 1 из 1

Вместо букв вопросы на сайте.

Добавлено: 16 янв 2017, 18:36
4Minsk
Вопросительные знаки вместо букв на сайтах - часто встречающая проблема после переезда сайта на другой сервер (хостинг), обновления программного обеспечения сервера либо восстановления сайта из бэкапа.
При этом данные в базе мог быть в абсолютно правильно состоянии, но на сайте у вас отображаются вопросительные знаки. Чаще всего такая проблема может возникать на старых, не обновляемых CMS либо самописных системах управления сайтом.

Первым вариантом решения такой проблемы заключается в установке в скрипте принудительного вывода необходимой кодировки:

для windows 1251:
mysql_query("SET NAMES 'cp1251'");
mysql_query("SET CHARACTER SET 'cp1251'");

для utf8:
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'");

Прописывать в скриптах данный код нужно рядом с обращениями к базе. Обращения к базе имею вид "mysql_query($query)".

Например для движка Aardvark Topsites это будет файл /sources/sql/mysql.php


Вторым вариантом решения проблемы вопросительных знаков вместо букв на сайте может служить перекодирования текста и изменение кодировки таблиц непосредственно в базе данных. Этот вариант менее привлекателен, т.к. в последующем могут возникнуть проблемы с вновь добавляемыми данными (их кодировкой) с сайта.