Perlコーディング初心者質問スレ Part 64
■ このスレッドは過去ログ倉庫に格納されています
0390nobodyさん
2012/11/15(木) 16:49:11.21ID:???GETで得たURLエンコードがどうにもこうにも文字化けしたままなのです
環境はActivePerl 5.14.2 Build 1402 (64-bit)
ちょっとわけあってshiftjisで書いてます
ファイルの頭で文字コードを指定しています
use encoding "shiftjis";
binmode STDERR, ":encoding(shiftjis)";
送る側は
<form action="main.pl" method="get">
<input type="checkbox" name="tag" value="$xx">$xx ←日本語で数回分
<input type="submit" value="送信">
</form>
受ける側も同じファイルです
POSTかGETか判別して $alldata に入れた後
foreach my $tmp(split(/&/,$alldata))
{
print $tmp;
print "<BR>";
(my $key,my $val)=split(/=/,$tmp);
ここまではいいんですが
$val=~ tr/+/ /;
$val=~ s/%(..)/pack('H2', $1)/ge;
と、すると
「野外」 と入れたものが 「\x{fffd}O」 と表示され
■ このスレッドは過去ログ倉庫に格納されています