- Проблемы с кодировкой MySQL, Char0Day, 01:56 , 18-Окт-06 (1)
>Сервер коректно отображает русские символы, которые находятся в php файлах, но то, >что вытаскивает из MySql, отображет криво (вот так - ???????). Делаю >вывод, что проблема с перекодировкрй данных MySQL. Данные в MySQL импортировал >из внешенго файла с помощью phpMyAdmin (кто ставил phpnuke, тот знает). >При этом какие кодироки для импорта только не указывал, и utf8, >и cp1251, даже KOI8-R и KOI8-U пробовал. Отображает все равно не >корректно. Заметил, что сам phpMyAdmin отбражает все в utf8. Если есть доступ к шелл- запустите mysql - u root -p введите пароль (если пароль отсутствует? то -р не надо) и затем дайте команду show variables; Обращайте внимание в какой кодировке указаны следующие переменные: | character_set_client | | character_set_connection | | character_set_database | | character_set_results | | character_set_server | | character_set_system | | collation_connection | | collation_database | | collation_server | Для быстрой проверки используйте set character_set_client=UTF8; (кодировку нужную подставите) и так для остальных переменных. Лучше прописать переменные в my.cnf PHPMyAdmin корректно отображает данные из импортированной базы данных? Если корректно, то база импортировалась нормально. Если некорректно, то в шеле необходимо (после входа в майскъюль клиента mysql - u root -p) создать запрос к какой-либо из таблиц в вашей импортированной базе: use YOUR_DB_NAME (YOUR_DB_NAME - название Вашей базы) select * from your_table_name; (your_table_name - название какой-нибудь таблицы в данной базе, где есть записи). Если отображается нормально - то база импортировалась корректно. При этом, если в PHPMyAdmin отображаются каракули - смотрите настройки mysql (особенно | character_set_client, character_set_connection, character_set_results) После настройки сервера мускул, PHPMyAdmin должен начать корректно отображать данные из бд (если до этого были проблемы). Проблема может быть также и в настройках скриптов пхп. надо перед запросами в скриптах указывать "Set Names=UTF8;" (или другую необходимую Вам кодировку)
|