У меня есть база данных с такими параметрами:
character_set_client: utf8
character_set_connection: utf8
character_set_database: utf8
character_set_filesystem: binary
character_set_results:utf8
character_set_server: cp1251
character_set_system: utf8
Я не использую JQuery. Я помещаю данные в БД с помощью AJAX. Все работает нормально, пока я не хочу получать данные кириллицы из базы данных. В браузере я вижу browser вместо символа кириллицы. Можете ли вы показать мне место с проблемой? Благодарю.
Я постараюсь дать вам совет. Проверяйте все шаг за шагом и не забудьте сделать резервную копию, прежде чем что-то делать.
1) Измените ваш character_set_server: cp1251 на utf8. Вы можете сделать это в своем конфигурационном файле mysql my.cnf. Когда вы измените его — вы должны перезапустить MySQL. Добавьте следующее:
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8
2) Посмотрите на свою базу данных. Хорошо ли внутри выглядит информация? Если нет — проверьте, как вы сохраняете свои данные.
3) Проверьте свою мету. Это должно выглядеть так:
<head>
<meta charset="utf-8">
<title>Your title</title>
</head>
4) Вы можете указать тип кодировки через заголовки php:
<?php
header('Content-Type: text/html; charset=utf-8');
Этот код должен появляться перед любым выводом в вашем скрипте.
5) Проверьте ваш браузер. Иногда я забываю сменить кодировку с ручной на автоматическую. Или вы можете изменить его вручную на UTF-8.
Надеюсь, это поможет вам.
Других решений пока нет …