PHP の PEAR ライブラリの、HTTP/Request.php で、ファイルを送信しようとしています。


$req=>addFile("elementname",$filename);

という感じでファイルを送信するのはうまくいくのですが、

$req=>addFile("elementname",$filename1);
$req=>addFile("elementname",$filename2);

というかたちでファイルを2つ追加しようとすると、片方しかアップロードされません。

Post される内容を見ても、後者の addFile が上書きされてしまいます。

var_dump($req);

してみると、どうやら同名では配列に入れられないようです。

一方 Web ブラウザで複数の同名ファイルをマルチパートで送る事に成功しています。HTTPヘッダをダンプしてみると単に同要素名で別ファイルを再送しているだけです。

HTTP/Request.php を使い、同一セッションの中で、同じ要素名を持つ別ファイルを、何度も送信する方法はないでしょうか。

サーバの仕様では同ファイル名で複数ファイルを裁くようになっているので、クライアントでそのように送信してやることが必要なようです。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2006/09/15 22:50:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:Tetorisu No.1

回答回数72ベストアンサー獲得回数2

ポイント60pt

ないんじゃないですか・・・ぜんぜんみつかりません

http://www.moug.net/dnload/index.htm

でもなんかいいのがあるそうです。

id:ryuzi_kambe

> でもなんかいいのがあるそうです。

回答先を間違えましたか?

今回の質問への回答のリファレンスとしてはとても適切とはいえないように思います。

他に回答がなければ、とりあえず、Request.php の改造版でしのごうと思いますので、この質問はキャンセルしようかと思います。


(追記)ファイルを実際に送る直前に、特定の(自分が指定した任意の)フィールド名のとき(例えば elementname2, elementname3 など)を、毎回置換する(elementname2 → elementname に戻す)ということで、回避出来ました。

しかし、Request.php に手を入れるので、あまりいい感じではありません。同じファイルに別名で置いておき、そちらの別名 Request.php を include するようにしています)

2006/09/10 14:39:14

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません