LINUX.ORG.RU

Сообщения kozlodoev

 

Проблемы с кодировок в PERL....

Форум — Development

Пишу не большой сервис (сайтик), кодировка сайта koi8-r. По запросу от клиента скрипт на сервере (PERL, mod_perl) парсит XML документ, который тоже в koi8-r кодировке. С помощью библиотеки XML::Simple (XMLin). В результате этого процесса получаю ссылку на HASH.

Далее выполняю преобразование элементов HASH-a в кодировку koi8-r, т. к. после парсинга XML результат возвращается в utf, библиотекой Encode.

Encode::_utf8_on($param->{Name}); $param->{Name} = Encode::encode('koi8-r',$param->{Name});

Дамп = { 'CName' => 'TX_SET__nemedlenno_peredavat', 'InputLevel' => '1', 'ObjectId' => 10001, 'ValueAlias' => '\'выкл;вкл\", 'DeviceId' => '103', 'ValueType' => '\'0;1\", 'ValueInput' => 'radio', 'Name' => 'Вкл. излучение', 'ShowLevel' => '1' };

До этого момента все гладко. Теперь я пытаюсь вставить данные в базу данных. Для это, через стандартную функцию PERL-a join пытаюсь построить запрос:

my $statement = «INSERT INTO ». $tbl . " (".(join(',',@cols)).") VALUES(".(join(',',@vals)).");";

Но в результате в переменной $statement вместо русского текста крокозябры:

INSERT INTO Params (CName,InputLevel,ObjectId,ValueAlias,DeviceId,ValueType,ValueInput,Name,ShowLevel) VALUES('TX_SET__nemedlenno_peredavat','1','10001','\'ц≈ц≥ц▀ц▄;ц≈ц▀ц▄\",'103','\'0;1\",'radio','ц╥ц▀ц▄. ц┴ц ц▄ц∙ц·ц┘ц▌ц┴ц┘','1');

Если не использовать функции join, то все работает. А мне нужно использовать такой метод генерации SQL запроса. В чем может быть причина такого поведения? Не как не пойму?

kozlodoev
()

Как сделать программно скриншот в Ubuntu (Linux) на Perl

Форум — Development

Появилась необходимости добавить в web-приложение (сайт, который работает только на на локальной машине) функционал, который позволяет сделать снимок экрана и сохранить его на диске в случае непредвиденной ошибки сайта (web-приложения) или просто по запросу от сайта. CGI скрипт сайта написан на Perl. Так как я занимаюсь в основном вэб-разработкой, как программно делать скриншот, я не знаю и прошу вашей помощи.

kozlodoev
()

RSS подписка на новые темы