[PHP-users 27294] POSTデータの文字化けについて
h.oka@netlab.club.ne.jp
h.oka @ netlab.club.ne.jp
2005年 10月 25日 (火) 10:03:36 JST
岡と申します。
下記のような簡単なプログラムを作って、フォームから実行すると、
期待した結果になりません。
テキストボックスから入力された文字を表示するだけの簡単な
プログラムなのですが、
「劉」、「孫」、「表」などを入力すると、
結果表示が、「\0」だったり文字化けしたりします。
環境は、
Linux 2.6.8-1 (TurboLinux Server 10)
Apache 1.3.33
PHP 4.3.11
オプション
./configure --prefix=/usr/local/php \
--with-apxs=/usr/local/apache/bin/apxs \
--with-pgsql=/usr/local/pgsql \
--with-iconv \
--enable-mbstring \
--enable-mbregex \
--with-mbstring=all \
--enable-mbstr-enc-trans \
--with-mcrypt \
--with-mime-magic \
--with-gettext \
--with-dom \
--with-xml \
--with-ftp \
--with-openssl \
--with-imap=/usr/local/lib \
--with-imap-ssl=/usr/local/openssl \
--enable-imap \
--enable-gd-native-ttf \
--with-gd=/usr/local \
--with-freetype-dir=/usr/local \
--with-jpeg-dir=/usr/local \
--with-zlib=/usr/local \
--with-png-dir=/usr/local \
--with-pspell
なお、mbstringのオプションは、.htaccessで以下のように
設定しています。
php_value output_buffering Off
php_value mbstring.language Japanese
php_value mbstring.encoding_translation On
php_value mbstring.http_input auto
php_value mbstring.http_output EUC-JP
php_value mbstring.internal_encoding EUC-JP
php_value mbstring.detect_order auto
php_value mbstring.substitute_character none
php_value default_charset EUC-JP
# form.php
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=euc-jp">
</HEAD>
<BODY>
<form action=form.php method=post>
<input type=text size=20 name=message>
<input type=submit value="送信">
</form>
<HR>結果表示:
<?php
if($HTTP_POST_VARS['message']){
echo $HTTP_POST_VARS['message'];
}
?>
</BODY>
</HTML>
---form.php end---
宜しくお願いします。
PHP-users メーリングリストの案内