PostgreSQL UTF-8, Vitaly_loki, 16-Июн-08, 15:35 [смотреть все]Система FreeBSD 5.3, Apache-2.2.8, Perl-5.10.0, DBI-1.602, DBD-Pg-2.8.1, PostgreSQL-8.3.3Делаю такой запрос из cgi-скрипта (на Перле): $sth1 = $dbh->prepare ("SELECT 'Всего', ROUND(SUM(bytes)/1024, 2), ROUND(SUM(bytes)/1024/1024, 2) FROM traffic WHERE date_part('month',date) = $month_ch Кодировка utf8 Вместо слова "всего" выводятся крякозябры, все уже испробывал: база данных создана в кодировке UTF8; переменные окружения ru_RU.UTF-8 Ну не хочет кириллицу нормально показывать и все. Причем со всеми другими кодировками работает нормально. В UTF8 русский текст из самого скрипта в браузер отсылаются корректно, а вот в БД нет. Причем по логам видно, что Постгресу передаются уже кракозябры, т.е. скрипт передает БД кракозябры. Через EMS PostgreSQL Manager все происходит нормально
|
- PostgreSQL UTF-8, angra, 18:21 , 16-Июн-08 (1)
Проверьте что кодировка соединения с постгресом совпадает с кодировкой скрипта. Если используется utf8, то попробуйте добавить use utf8 в блоке со строкой запроса, возможно стоит вынести ее в отдельную переменную, ну и наконец может понадобится жестко указать наличие/отсутствие utf8 в переменной через utf8::upgrade($bytestring) and utf8::downgrade($utf8string)
- PostgreSQL UTF-8, Vitaly_loki, 07:06 , 17-Июн-08 (2)
>Проверьте что кодировка соединения с постгресом совпадает с кодировкой скрипта. Если используется >utf8, то попробуйте добавить use utf8 в блоке со строкой запросаЯ просто в перл-скрипте объявил так: use utf8 и все заработало :) Спасибо большое, знал же что дело не в СУБД, ибо через всякие менеджерыSQL кодировка корректная, именно perl-скрипт отсылал уже исковерканный текст Спасибо огромное еще раз :)
- PostgreSQL UTF-8, Vitaly_loki, 07:11 , 17-Июн-08 (3)
>>Проверьте что кодировка соединения с постгресом совпадает с кодировкой скрипта. Если используется >>utf8, то попробуйте добавить use utf8 в блоке со строкой запроса > >Я просто в перл-скрипте объявил так: use utf8 и все заработало :) > >Спасибо большое, знал же что дело не в СУБД, ибо через всякие >менеджерыSQL кодировка корректная, именно perl-скрипт отсылал уже исковерканный текст > >Спасибо огромное еще раз :) Т.е. написал вначале такое: #! /usr/bin/perl -w use strict; use CGI qw/:all/; use DBI; use utf8; Клево, все работает :) Спасибо, Ангра :) Кстати, клевая группа "Angra" :)
- PostgreSQL UTF-8, angra, 08:11 , 17-Июн-08 (4)
Все-таки лучше use utf8 ограничивать небольшим блоком, а не ставить глобально на скрипт. Наталкивался при работе с базой, что в пределах одного скрипта он в одном месте нужен, а в другом мешает. Мой ник к рок-группе Angra не имеет ни малейшего отношения, просто совпадение.
- PostgreSQL UTF-8, kabasik, 10:32 , 17-Июн-08 (5)
>Мой ник к рок-группе Angra не имеет ни малейшего отношения, просто совпадение. Есть подозрение что "Lavr" = "Angra". Судя по знаниям... :)
|