CGI.pmのtextfieldのデフォルト文字列が文字化けしてしまいます。。
CGI.pmのtextfieldの設定したデフォルト文字列が文字化けしてしまいます。。
以下のコードはちゃんと表示されるのですが。
print checkbox('only_exist', 'checked', 1, '削除済動画除外');
→ <label><input type="checkbox" name="only_exist" value="1" />削除済動画除外</label>
textfieldを使った以下のコードはちゃんと表示されません。。
print textfield('keyword', '削除済動画除外', 20);
→ <input type="text" name="keyword" value="ã²ããã" size="20" />
どっちもうまく表示されないのならわかるのですが、片方だけなので全く原因が分かりません。。
コードはUTF-8にて記述。(Non BOM)
コード冒頭は
#!/usr/bin/perl
require 5.8.0;
use utf8;
use strict;
use warnings;
use Encode qw(decode encode);
use CGI qw(:form param -nosticky -no_undef_params);
use Data::Dumper;
use POSIX 'strftime';
use LWP::UserAgent;
use HTTP::Request;
use open OUT => ":encoding(utf8)";
use open ":std";
use HTML::Entities 'encode_entities';
となっております。
アドバイスいただけると嬉しいです _ _
お礼
質問が少し不適切なところがありました。文字化けではなく、「value」にはUTF8の文字コード値が表示されます。本当に困りました。最近IDE(Eclipse)に頼りすぎるところがあるかもしれませんね。