[PHP-users 159] Re: ファイルアップロード

SAWADA Hodaka php-users@php.gr.jp
Thu, 21 Jun 2001 12:38:18 +0900


At Thu, 21 Jun 2001 11:25:46 +0900,
Yamato Hoshino wrote:

> もう、一度確認していた所
> test.phpの画面でTYPEのところだけ空白でした。

略

> PHPの設定のミスでしょうか?

さて file upload ですが、これには受ける側(PHP) と送り出す側(ブラウザー)
という二人の役者がいるのですが、今回の問題はどちらでしょうか?


まともに file type をよこさない不埒な奴がいるのは事実です。

よって、ftp://ftp.astron.com/pub/file/ から
file-x.xx.tar.gz を持ってきて、

upload された file を $target に入れて、

exec ("/usr/local/bin/file -bi ".escapeshellcmd ($target), $ctype_ret);

preg_match ("/(.*?)\/(.*?)(?:;[ \t]*(.*?)=\"?([^\"]*)\"?)?$/",
  $ctype_ret[0], $ctype_str);

$ctype_type = $ctype_str[1];
$ctype_subtype = $ctype_str[2];
$ctype_parm[$ctype_str[3]] = $ctype_str[4];

てな感じでいかがでしょうか。
# ctype = Content-Type の略です。
-- 
         =^^= HODA =^^=          http://www.tail.gr.jp/~hoda/
澤田保隆@しっぽアルゴリズム情報研究所  mailto:hoda@tail.gr.jp