Показать сообщение отдельно
Старый 24.08.2008, 11:17
deeplay вне форума Посмотреть профиль Отправить личное сообщение для deeplay Найти все сообщения от deeplay
  № 1  
Ответить с цитированием
deeplay

Регистрация: Dec 2007
Сообщений: 27
По умолчанию Проблема с хранением юникода в MySQL

Доброе время суток.

Для тех кому лень читать нижеописанное, сразу задам вопрос:
Где в phpMyAdmin что надо поменять, что бы в базу заносилось səhifə, а не s&#.601;hif&#.601;?

Для тех, у кого есть время:

Была создана база с таблицами с кодировкой по умолчанию (cp1251_general_ci).

В базу занесен (например) текст səhifə. Он попал в базу как s&#.601;hif&#.601;
php-файл читает с базы, флеш у него берет переменную, хранящая вышеуказанный текст. Флеш конечно после буквы s в тексте все оборвет, это многие тут знают. php-файл сохранен в кодировке UTF8 и если вручную там вписать этот текст, то флеш с радостью все читает! это тоже знаем

В базе (через phpMyAdmin) все поля Сравнение сделал utf8_unicode_ci и вообще, кликнув на Операции (для всей БД) сравнение сделал так же utf8_unicode_ci. (далее, когда увидел что не помогает, делал у всего utf8_general_ci)

Создал новую таблицу, она уже в utf8_unicode_ci, и вписал туда səhifə, в базу опять занесено s&#.601;hif&#.601;

Где в phpMyAdmin что надо поменять, что бы в базу заносилось səhifə ?

p.s.: искал по форуму, советовали iconv. определял кодировку (почему-то ISO-8859-1). менял (iconv_set_encoding) на UTF8, после чего iconv_get_encoding показывал UTF8! и даже делал iconv("ISO-8859-1", "UTF-8", "s&#.601;hif&#.601;"); — все без толку (((((