12 |
require Message::CGI::HTTP; |
require Message::CGI::HTTP; |
13 |
require Encode::EUCJPSW; |
require Encode::EUCJPSW; |
14 |
my $cgi = Message::CGI::HTTP->new; |
my $cgi = Message::CGI::HTTP->new; |
|
$cgi->{decoder}->{'#default'} = sub { |
|
|
return Encode::decode ('euc-jp-sw', $_[1]); |
|
|
}; |
|
15 |
|
|
16 |
my $page = $ENV{QUERY_STRING}; |
my $page = $ENV{QUERY_STRING}; |
17 |
if ($page =~ /[&;]/) { |
if ($page =~ /[&;]/) { |
18 |
$page = $cgi->get_parameter ('mypage') // ''; |
$page = $cgi->get_parameter ('mypage') // ''; |
19 |
|
|
20 |
|
my $charset = $cgi->get_parameter ('_charset_') // 'euc-jp-sw'; |
21 |
|
$charset = 'euc-jp-sw' unless $charset eq 'utf-8'; |
22 |
|
$page = Encode::decode ($charset, $page); |
23 |
} else { |
} else { |
24 |
$page = Encode::decode ('euc-jp-sw', percent_decode_byte ($page)); |
$page = Encode::decode ('euc-jp-sw', percent_decode_byte ($page)); |
25 |
} |
} |