[PHP-users 12709] Re: 標準入力からデータの受け取り

Yasuo Ohgaki php-users@php.gr.jp
Tue, 21 Jan 2003 17:38:19 +0900


大垣です。

dormouse wrote:
>  JavaアプレットからPOSTメソッドで画像データを受け取って
> ファイルに保存するスクリプトを書いています。
>  アプレットからのデータを標準入力から読み取るため、
> 
> $fp = fopen("php://stdin","r");
> 
> $data= fread($fp, $_SERVER['CONTENT_LENGTH']);
> 
> のように処理していますが、$dataが空になってしまいます。
> $_SERVER['CONTENT_LENGTH']には正しい値が
> 入っているのが確認できています。
> 
>  Javaアプレットはアリモノを使っているので仕様変更できず、
> 行き詰まっています。
>  どのような原因が考えられるか、ご意見をお願いします。

$_POSTまたは$_FILESを使えそうな気もしますが...

# とりあえず、var_dump($_POST), var_dump($_FILES)
# をしてみると役に立つかも知れません。
# おかしな(独自)仕様のデータを送っている場合は以下の
# 変数からどのようにも処理できます。

php.ini設定のallways_populate_raw_post_dataと
$HTTP_RAW_POST_DATAを使えばどのようなPOSTデータで
も自由に処理できます。

--
Yasuo Ohgaki