[PHP-users 1952] Re: multipart/form-data で文字化け

Rui Hirokawa php-users@php.gr.jp
Sun, 9 Sep 2001 08:18:23 +0900


廣川です。

現在の実装では、multipart/form-dataのハンドラは通常のPOSTハンドラと
異なっており、自動検出/変換の対象となっていません。
従ってマニュアルで検出/変換を行う必要があります。

PHPマニュアル(http://www.php.net/manual/ja/ref.mbstring.php)によれば
以下のようになっています。

「HTMLフォームのenctypeが multipart/form-dataに設定された場合、 mbstring は、POSTデータの文字エンコーディングを変換しません。この場合、文字列を内部文字エンコーディングに変換してやる必要があります。」


On Sun, 09 Sep 2001 03:04:29 +0900
Satoshi Yamada <s-yamada@kcc.zaq.ne.jp> wrote:

> やまだ@神戸市です。
> 
> > やまだ@神戸市です。
> > >  >データが化けてしまいます。具体的には下記のようなフォームの場合です。
> > >  ># ちなみにソースは EUC で書いてあります。
> > > http_inputで、Shift_JISの優先度を上げてみるとどうなりますか?
> > > autoは、ASCII,JIS,UTF-8,EUC-JP,SJISと同義なので、
> > > SJISよりも、EUC-JPの方が優先度が高いのでEUC-JPと判定されてしまったのかも。
> > 試してみましたが、Shift_JIS だけにしてみてもダメみたいです。
> 
> とりあえず
> 
>   $input_enc    = i18n_discover_encoding($text);
>   $internal_enc = i18n_internal_encoding();
>   $text = i18n_convert($text, $internal_enc, $input_enc);
> 
> というように強制的にエンコードを変更することにより回避できました。
> どうもお騒がせしました _o_
> # とはいえ原因がわかってないないのでイマイチ釈然としませんが...
> -- 
> やまだ
> 
> _______________________________________________
> PHP-users mailing list
> PHP-users@php.gr.jp
> http://ns1.php.gr.jp/mailman/listinfo/php-users
> 


-- 
-----------------------------------------------------
Rui Hirokawa <louis@cityfujisawa.ne.jp>
             <hirokawa@php.net>