[PHP-users 17574]multipart/form-data指定時の内部コードへの自動変換

Seiji Masugata s.masugata @ digicom.dnp.co.jp
2003年 8月 28日 (木) 16:47:12 JST


こんにちわ、桝形です。

http://ns1.php.gr.jp/pipermail/php-users/2003-July/017633.html

にて、廣川さんが、

> 今回、ファイルアップロードされたファイル名の文字コードを
> 内部文字コードに変換するコードを追加していますので、
> この辺をテストしていただけるとありがたいです。
> シフトJISのファイル名のアップロード時に0x5cがあると正常に
> ファイル名が取得できなかった問題は解決できるのではと
> 期待しています。

と、報告されておりましたのをすっかり忘れておりまして、遅ればせ
ながら( 遅すぎ! )このテストをPHP4.3.3にてテストしてみました。

簡単にテストしてみたところ、概ね問題なさそうなのですが、一点だけ
気になった点が。

value値ではなく、nameにマルチバイト(シングルバイトではなく)を指定
した場合に、multipart/form-dataでは、value値は問題なさそうですが、
nameがおかしくなるようです。

multipart/form-dataを指定しなければ問題ないようです。

テスト&報告が遅れまして申し訳ありません。

ただ、nameにマルチバイトを指定した場合なんて、そうそう無さそうです
ので、あまり大きな問題はないかな。。。と思います。

自分も間違って指定してて、初めて気がついたものですので。(^^;

FileUp.php
----------------------------------------------------------------------
<?
print_r( $_POST );
print_r( $_FILES );
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
</head>
<body>
<!-- form action="FileUp.php" method="post" enctype="multipart/form-data" -->
<form action="FileUp.php" method="post">
<input type="text" name="テスト">
<input type="hidden" name="ほほう?" value="どうだぁ">
<input type="hidden" name="こ、これだ!" value="違う!">
<input type="file" name="ファイル">

<!-- input type="text" name="hoge1" -->
<!-- input type="hidden" name="hoge2" value="どうかね?" -->
<!-- input type="hidden" name="hoge3" value="まだまだ?" -->
<!-- input type="file" name="hoge4" -->


<input type="submit">
</form>
</body>
</html>
----------------------------------------------------------------------

php.ini:
----------------------------------------------------------------------
mbstring.language = Japanese
mbstring.internal_encoding = EUC-JP
mbstring.http_input = auto
mbstring.http_output = SJIS
mbstring.encoding_translation = On
mbstring.detect_order = SJIS-win,SJIS,eucJP-win,EUC_JP,UTF-8,UTF-7,ISO-2022-JP,JIS,ASCII
mbstring.substitute_character = none;
mbstring.func_overload = 1
mbstring.script_encoding = SJIS
----------------------------------------------------------------------

--
Seiji Masugata<s.masugata @ digicom.dnp.co.jp>



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