[PHP-users 21005]Re: いくつの文字が化けてしまいます

まーちゃん ma-chan @ fudou.ne.jp
2004年 3月 26日 (金) 13:37:52 JST


    はじめまして、ま〜ちゃんです

その問題は多分 php.ini の

    magic_quotes_gpc=On になっている場合だと思います。
これを Off にするか

この場合、
/////////////////////////////////////////

$post_data=@$_POST["text1"];  //"text1"はformの部品です

echo "<p>入力内容:".$post_data;    //‘十\圭\’

        // magic_quotes_gpc = On のとき、エスケープを解除
        if (get_magic_quotes_gpc()) {
            $post_data = stripslashes($post_data);
        }
echo "<p>入力内容:".$post_data;    //‘十圭’

//////////////////////////////////////////
   のようにされては如何でしょう?

> Hello
>
> 外国開発者なので言葉遣いが下手でも勘弁して頂きたいと思います。
>
>
> OS : RedHat9
>
> Apache : 2.0.47
>
> PHP : 4.3.3
>
> 以上の環境でWebPageを開発していますが
>
> いくつの文字(‘十’、‘圭’など)もPost,Get方式ですると
>
> 文字化けなってしまいます。
>
> ‘十圭’ −> ‘十\圭\’
>
> このように余計な‘\’が入ってしまいます。
>
> それでマルチバイトを適用して
>
> output_buffering     = On
> output_handler       = mb_output_handler
> default_charset      = Shift_JIS
> mbstring.language = Japanese
> mbstring.http_input  = auto
> mbstring.http_output = SJIS
> mbstring.internal_encoding = EUC-JP
> mbstring.encoding_translation = On
> mbstring.substitute_character = none
>
> php.iniをこのように変わったらフォームからのPost値は文字化けにならずに正し
く
> なってんですが
>
> Post値の以外HTML Scriptが文字化けになってしまいブラウザのエンコード変えて
も
> 無駄です。
> mbstring.encoding_translationをOffしたらHTMLは大丈夫ですがPost値が文字化け
が
> なり、どうすればいいのか困ってます。
>
> HTML Meta Tagは <meta http-equiv="Content-Type" content="text/html;
> charset=Shift_JIS">です。
>
> 解決方法お願いします。
>
>
> _______________________________________________
> PHP-users mailing list  PHP-users @ php.gr.jp
> http://ns1.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://www.php.gr.jp/php/novice.php3



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