Небольшая проблема с MySQL и UTF-8 - пропадает буква "ш"

fog

Рыцарь Джедай
Небольшая проблема с MySQL и UTF-8 - пропадает буква "ш"

Такая проблема:

Создаю таблицу в MySQL,
Выполняю запрос insert into values('...рашен..')

Затем делаю select, достаю эту запсь. Строка выводится правильно, за исключением буквы "ш", вместо которой выводится крокозяблик.

При создании таблиц использовалась таблица utf8_general_ci

MySQL 4.1 (win), PHP 5.0.2

Подскажите, в чём может быть дело?
 

slach

Новичок
а insert у тебя ведется в чем ??? в UTF ???
на клиентской стороне... чем в UTF кодируешь ?
 

fog

Рыцарь Джедай
Хм, не совсем понял вопроса, в какой кодировке файл, из которого делается запрос? В UTF-8, файл создавался редактором EditPlus2.

На этом форуме
http://forum.dklab.ru/php/heap/TheSmallProblemWithMysqlAndUtf-8-VanishesTheLetterSh.html
я привёл пример
 

SiMM

Новичок
fog, значит делаешь так:
PHP:
//....
$value = 'Побег из Шоушенка';
echo $value."\t".dump($value)."<br />\n";
MySQL_Query("insert into utf8_test values('$value')");
$res = MySQL_Query('select text from utf8_test order by text ASC');
while (list($text)=MySQL_Fetch_Row($res)) {
  echo $text."\t".dump($text)."<br />\n";
  break;
}

function dump($str){
  return substr(preg_replace('#.#se','sprintf("%02x.",ord("$0"))',$str),0,-1);
}
Результат докладываешь.
PS: базу перед этим всегда чистишь.
 

fog

Рыцарь Джедай
Побег из Шоушенка .d0.9f.d0.be.d0.b1.d0.b5.d0.b3.20.d0.b8.d0.b7.20.d0.a8.d0.be.d1.83.d1.88.d0.b5.d0.bd.d0.ba.d0.b
Побег из Шоу&#65533;?енка .d0.9f.d0.be.d0.b1.d0.b5.d0.b3.20.d0.b8.d0.b7.20.d0.a8.d0.be.d1.83.d1.3f.d0.b5.d0.bd.d0.ba.d0.b


строки рядом
----
.d0.9f.d0.be.d0.b1.d0.b5.d0.b3.20.d0.b8.d0.b7.20.d0.a8.d0.be.d1.83.d1.88.d0.b5.d0.bd.d0.ba.d0.b
.d0.9f.d0.be.d0.b1.d0.b5.d0.b3.20.d0.b8.d0.b7.20.d0.a8.d0.be.d1.83.d1.3f.d0.b5.d0.bd.d0.ba.d0.b
 

SiMM

Новичок
> .d0.9f.d0.be.d0.b1.d0.b5.d0.b3.20.d0.b8.d0.b7.20.d0.a8.d0.be.d1.83.d1.88.d0.b5.d0.bd.d0.ba.d0.b
> .d0.9f.d0.be.d0.b1.d0.b5.d0.b3.20.d0.b8.d0.b7.20.d0.a8.d0.be.d1.83.d1.3f.d0.b5.d0.bd.d0.ba.d0.b
Где-то встречалось что-то подобное. Попробуй воспользоваться поиском по форуму.
 

fog

Рыцарь Джедай
Да я вижу, и пониимал что произошло сразу, но почему это происходит - пока мне не понятно :)

Спасибо, поищу.
 
Сверху