The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Проблемы с кодировкой MySQL, !*! Dosik, 18-Окт-06, 00:35  [смотреть все]
  • Проблемы с кодировкой 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;" (или другую необходимую Вам кодировку)





Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру