Привет всем, столкнулся со следующей проблемой...
Есть база mysql 5.0.44 :
MySQL-кодировка: UTF-8 Unicode (utf8)
Сопоставление соединения с MySQL: utf8_general_ci
есть таблица, сравнение нужных полей utf8_general_ci.
Получаю данные и вывожу:
my $sql = $db->prepare("SELECT text FROM `table` ORDER BY `id` DESC"); $show_all->execute(); while (my @sql = $show_all->fetchrow_array()) { print qq( $sql[0] ); } $sql->finish();
В html стоит:
meta http-equiv=content-type content="text/html; charset=UTF-8"
В результате чего вижу текст в неправильной кодировке, браузер выставляет кодировку как западноевропейскую. Подскажите как добиться правильного отображения ??
смотреть настройки apache или mysql ? или в perl надо перекодировать как-то ? какой запрос в google для просвещения ?

браузер
Если принудительно выставить кодировку браузреа utf8 все равно видишь крякозярбы?
Ссылка
Уважаемый fu7ur3!
У Вас, случайно, не этот (http://lists.indexdata.dk/pipermail/zaplist/2003-November/000117.html) вариант?
БД сразу
БД сразу создавалась с этой кодировкой? Или перекодировка из другой?
Если второе - то проблема :) Надо БД сразу в utf-8 создавать. Можете погуглить, даже mysql.ru об этом писал...
________________
Система нипель)
Если принудительно выставить кодировку браузреа utf8 все равно видишь крякозярбы?
Если принудительно выставить UTF-8 то все правильно отображается, но как сделать чтобы браузер сам это делал...
БД сразу создавалась с этой кодировкой? Или перекодировка из другой?
Сразу было UTF-8. Вообще я считаю чем быстрее программисты откажутся от других кодировок в пользу unicode, тем меньше будет проблем потом, в будущем.
У Вас, случайно, не этот (http://lists.indexdata.dk/pipermail/zaplist/2003-November/000117.html) вариант?
Видимо нет, потому что делал так:
1) META http-equiv="content-type" content="text/html; charset=UTF-8"
2) META http-equiv="content-type" content="text/html; charset=utf-8"
3) META http-equiv="Content-Type" content="text/html; charset=UTF-8"
4) META http-equiv="Content-Yype" content="text/html; charset=utf-8"
и все равно показывает:
текÑÑ‚, большой и огромный.. интереÑный и познавательный)
PS: Вот появилась мысль, может быть из за того что у меня:
вместо:
print "Content-type: text/html\n\n";------------------
use Source();Решено!
Надо было
поменять на:
------------------
use Source();В дополнение
1) META http-equiv="content-type" content="text/html; charset=UTF-8"
2) META http-equiv="content-type" content="text/html; charset=utf-8"
3) META http-equiv="Content-Type" content="text/html; charset=UTF-8"
4) META http-equiv="Content-Yype" content="text/html; charset=utf-8"
Вообще-то, информация по ссылке касалась положения тега, а не регистра параметров. Но, судя по (http://apache.lexa.ru/meta-http.html) его лучше вообще убрать из html и всегда использовать вариант указания кодировки в заголовке ответа сервера (как Вы и сделали).