Forum Webscript.Ru

Программирование => Perl => Тема начата: amorphius от 05 Мая 2009, 10:17:12

Название: проблема с юникодом
Отправлено: amorphius от 05 Мая 2009, 10:17:12
есть такой код
use strict;
use utf8;
use DBI;
....
my $dbh = DBI->connect....
$dbh->do("set names utf8");
$sth = $dbh->prepare("select a from b where c=1");
$sth->execute;
$a = $sth->fetchrow_array();
print "Русская строка из базы данных: $a";

проблема в том, что строка, которую мы считали из базы, выведется иероглифами, зато если написать
print "Русская строка из базы данных: ";
print $a;

то все работает.
Кто знает в чем проблема?
Название: проблема с юникодом
Отправлено: arto от 05 Мая 2009, 11:32:13
выставить флаг utf8 у получаемых из базы данных.
Название: проблема с юникодом
Отправлено: amorphius от 05 Мая 2009, 22:59:41
поподробнее пожалуйста
Название: проблема с юникодом
Отправлено: arto от 05 Мая 2009, 23:34:16
perldoc DBD::mysql | less -p mysql_enable_utf8