[PHP-users 34425] Re: PEARのHTTP_Request2でファイルアップロード

小澤 直史 ozawa @ k-sd.jp
2009年 3月 18日 (水) 16:02:45 JST


PEARのアップロードの件ですが、

> $req->addUpload('filename','/path/to/image/1.gif', '1.gif');
を
$req->addUpload('filename','/path/to/image/1.gif', '1.gif',"Content- 
Type: image/Gif");
としたらアップロードできました。

ドキュメントで
HTTP_Request2 addUpload( string $fieldName, mixed $filename, [string  
$sendFilename = null], [string $contentType = null])
となっており、ソース中でもNULLの場合、MIMETYPEを 
finfo_open関数で付与するようになっていたので、
不要かと思っていたのですが、
上記のように指定したところうまくいきました。

大変失礼致しました。
クローズさせていただきます。



On 2009/03/18, at 11:51, 小澤 直史 wrote:

> こんにちは。小澤ともうします。
>
> PEARのHTTP_Request2で、ファイルアップロードを試している
> のですが、
> ファイルが転送できません。
>
>
> $req = new HTTP_Request2("http://uploadServer/
> upload.php",HTTP_REQUEST2::METHOD_POST);
> $req->addUpload('filename','/path/to/image/1.gif', '1.gif');
> $response = $req->send();
> echo $response->getBody();
>
> このように記述すると、
> http://uploadServer/upload.phpの内容を出力することはできるの
> ですが、
> http://uploadServer側で$_FILESでファイルが取得できません。
>
> http://uploadServerでhttpリクエストヘッダをダンプすると、
>
> User-Agent=>HTTP_Request2/0.3.0 (http://pear.php.net/package/http_request2
> ) PHP/5.2.4
> Content-Type=>multipart/form-data; boundary=PEAR-HTTP_Request2-
> e5a7dc8d4fd2eb57c52f61f56c007ba9
> Host=>uploadServer
> Accept-Encoding=>gzip, deflate
> Content-Length=>3106
>
> のようになっており、multipartでの転送は行われているよう
> です。
>
> 単純に、プログラムの記述方法があやまっているのでしょうか?
>
>
> HTTP_Request2のaddUploadメソッドでファイルアップを行っ
> た経験のある方
> いらっしゃいましたら、ご教授願えれば幸いです。
>
> よろしくお願い致します。
> _______________________________________________
> PHP-users mailing list  PHP-users @ php.gr.jp
> http://ml.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読 
> みください
> http://oldwww.php.gr.jp/php/novice.php3


━━━━━━━━━━━━━━━━━━━━━━━━━━━━
K sound design Co.,Ltd.
研究開発室
小澤 直史  Mail:ozawa @ k-sd.jp
〒983-0852 宮城県仙台市宮城野区榴岡5丁目12-55
NAViS仙台ソフトウェアセンター5F
URL:http://k-sd.jp
TEL : 022-293-7245(代表)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━



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