[PHP-users 14229] get で日本語が文字化けする

北國 政則 php-users@php.gr.jp
2003年 3月 24日 (月) 16:08:51 JST


いつもお世話になります、北國です。

GET で、変数を別のページに引き渡したいのですが、
日本語の文字の種類によって文字化けを起こしてしまいます。
アドバイスを頂けないでしょうか、よろしくお願いします。

環境は、RedHad8.0 php-4.2.2 httpd-2.0.40 です。

問題の部分を簡単なプログラムにしてみました。
test.htmlからAタグで、test.phpに変数(日本語含む)を
引き渡します。

---test.html---------------
<html>
<head>
<title>テスト</title>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-JP">
</head>
<body>
<a href="test.php?aaa=1&bbb=ら&ccc=2">押してね</a>
</body>
</html>

---test.php---------------
<?php header("Content-type: text/html; charset=EUC-JP"); ?>
<?php
$a=$_GET[aaa];
$b=$_GET[bbb];
$c=$_GET[ccc];
printf("aaa=%s\n", $a);
printf("bbb=%s\n", $b);
printf("ccc=%s\n", $c);
?>

---結果---
aaa=1 bbb=、・ccc=2 ccc=
となってしまいます。
期待している結果は、
aaa=1 bbb=ら ccc=2
なんですが。

---補足---
IEの5.5で上記の現象が発生します。
NSでは、期待通りの結果になります。

また、test.html中の「bbb=ら」を「bbb=あ」と
すると、IEでも期待通りの結果となります。


よろしくお願い致します。





PHP-users メーリングリストの案内