複数ファイルのアップロードについて

このQ&Aのポイント
  • 現在aspで、前画面で指定されたファイルのアップロードを行っています。
  • 複数ファイルをアップロードする必要がありまして、現在ファイルの選択にはselectボックスを利用しています。
  • selectボックスに指定されたファイルパスは取得できているのですが、typeがfileではないのでアップロードが出来なくなってしまいます。どうにか他の手で解消できないでしょうか?
回答を見る
  • ベストアンサー

複数ファイルのアップロードについて

お世話になります。 現在aspで、前画面で指定されたファイルのアップロードを行っています。 単一ファイルの場合、前画面で <input type=file name=upfile>で指定したファイルを Basp21をのFormSaveAsを利用してアップロードしているのですが、 複数ファイルをアップロードする必要がありまして、 現在ファイルの選択にはselectボックスを利用しています。 selectボックスに指定されたファイルパスは取得できているのですが、typeがfileではないのでアップロードが出来なくなってしまいます。 どうにか他の手で解消できないでしょうか? DFILEUPも同じくダメでした。。。 ご存知の方、ご助言お願いします。 --環境-- winXP asp IIS --------

質問者が選んだベストアンサー

  • ベストアンサー
  • todo36
  • ベストアンサー率58% (728/1234)
回答No.1

HTMLはセキュリティのため<input type=file>以外に ファイルをアップロードする手段はありませんし、ファイル名を指定することも出来ません。 <input type=file name=upfile1> <input type=file name=upfile2> で複数のファイルを選択させるしかないでしょう。

関連するQ&A

  • ファイルのアップロードについて

    初めて投稿させていただきます。 今、WindowsNT4.0+SP6,IIS+ASPでファイルのアップロードを考えています。 調査している中で、basp21を使用してファイルをアップロードするところまでわかったのですが、その後すこしつまずいています。 basp21を使用してファイルを送信する場合、HTML上に<input type="file" name="strName">というタグを明記し、ファイルを送信する場合には、このタグに該当するファイルの絶対パスを明記するとは思うのですが、これを固定のファイル名にしたいのです。 試したこととして<input type="file" name="strName" value="c:\test.text">という形で明記しましたが、表示されませんでした。 ブラウザーはIE6.0およびNetscape 6.1を使用しております。 よろしくお願いします。

  • jQuery複数ファイルアップロード

    お世話になります。 jQuery Multiple File Upload Pluginを使って複数のファイルをアップロードしたいですがサーバー側でどのように受けたら良いか分からず困っています。 次のコードですと、アップロードするファイルが1個なら問題ないのですが、複数あるとに2番目以降のファイルの指定方法が分かりません。 http://javascript.webcreativepark.net/library/jquery_multiple_file_upload_pluginではname="upfile"が書かれておらずfile1[]、file2[]と読めると書いてあったのですができませんでした。 【html側】 <input type="file" name="upfile" class="multi" maxlength="5"/> 【サーバー側】※PHP print_r ( "アップロードファイル名 : " . $_FILES["upfile"]["name"] . "<BR>"); print_r ( "MIMEタイプ : " . $_FILES["upfile"]["type"] . "<BR>"); print_r ( "ファイルサイズ : " . $_FILES["upfile"]["size"] . "<BR>"); print_r ( "テンポラリファイル名 : " , $_FILES["upfile"]["tmp_name"] . "<BR>"); print_r ( "エラーコード : " . $_FILES["upfile"]["error"] . "<BR>");

    • ベストアンサー
    • PHP
  • ファイルのアップロード処理を確認画面で確認後にアップロードするようにし

    ファイルのアップロード処理を確認画面で確認後にアップロードするようにしたいのですが、プログラムの書き方がわかりません。確認画面を通さずにやればアップロードできるのですが。どうすればいいのか教えてもらえるとうれしいです。 流れとしては「アップロード画面でファイルを指定」→「確認画面でアップロードボタンを押す」→「アップロード結果画面」です。作成中のソースは以下のようになっています。 ■upload.html(アップロード画面) <html><head><title>アップロード画面</title></head><body> <form action="kakunin.php" method="post" enctype="multipart/form-data"> ファイル:<br> <input type="file" name="upfile" size="30"><br> <input type="submit" value="確認画面へ"> </form></body></html> ■kakunin.php(確認画面)<未完成> <html><head><title>確認画面</title></head><body> <?php $upfile=$_POST['upfile']; print "選択したファイル: $upfile<br>\n"; ?> <br>この内容でよろしいですか?<br> よろしければ「アップロード」ボタンを押してください。<br> <form action="uploadkekka.php" method="post" enctype="multipart/form-data"> <input type="submit" value="アップロード"> </form></body></html> ■uploadkekka.php <html><head><title>アップロード結果</title></head><body> <p><?php if (is_uploaded_file($_FILES["upfile"]["tmp_name"])) { if (move_uploaded_file($_FILES["upfile"]["tmp_name"], "uploadfiles/" . $_FILES["upfile"]["name"])) { chmod("uploadfiles/" . $_FILES["upfile"]["name"], 0644); echo $_FILES["upfile"]["name"] . "をアップロードしました。"; } else { echo "ファイルをアップロードできませんでした。"; } } else { echo "ファイルが選択されていません。"; } ?> </p></body></html>

    • ベストアンサー
    • PHP
  • ファイルのアップロード

    ASPを使って、ローカルPCにあるファイルをアップロードする方法を教えてください。 サーバの管理者が私ではないので、BASPなど、サーバー側にインストールが必要なものが利用できません。 それ以外の方法を使って、サーバにデータを送る方法を教えていただけますでしょうか。

  • basp21でのファイルアップロード確認画面

    BASP21を使用してファイルのアップえロードをしています. 現状で<input type=file>で選択したファイルを submitボタン押下でファイルのアップロードする所までは 期待どうりの動作しています. ここに、アップロード確認画面をつけくわえたいのですが 確認画面でどのようにファイルうけ渡せばよいか分からず困っています つまり、 1.ファイル選択画面   ・ファイル選択   ・submitボタン     ↓ 2.確認画面(アップロードするファイルのパス表示)   ・アップするファイルパス表示   ・submitボタン     ↓ 3.アップロード結果表示画面   (ここで始めてファイルのアップロード)   ということがしたいのです. しかし、2の状態でファイル情報を保持し、 3へ受け渡すのかが分かりません. どうか、お力添えお願いします.

  • ファイルのアップロードをできるだけ高速に行いたい!

    IIS5.0 + ASP(VBScript)で、BASP21を使ってファイルをアップロードする、イントラネットのサイトを作っています。5~8MB程度のファイルをアップロードするのですが、どうも Request.BinaryRead で数十秒程度の時間がかかっています。これを短縮するには、分離プロセスを「低」にするか、COMを自作するしかない、という結論に達しました。ちなみに、「低」にすると2~3秒に縮まりました。 そこで、質問なんですが、 (1)サーバのマシンスペック(CPU、メモリ)を上げると、さらに(「中」以上の設定でも)高速になりますか? (2)他のスクリプト言語を使うと、高速になりますか? (3)ASP.NET にするのは賢明でしょうか? よろしくお願いします。

  • BASP21のファイルアップロードでエラー

    IIS7.0の環境にBASP21をインストールして、ブラウザからのファイルアップロードを処理しようとしています。BASP21は、BASP21-2003-0211.exe をインストールしました。 症状は、ブラウザ(MSIE 7.0.5730.13)からファイルアップロードをすると、うまくいくときもあるし、うまくいかないときもあるという感じです。 うまくいくときは FormSaveAs でファイルが保存され、そのファイルを読み出して処理することができます。 うまくいかないときは FormSaveAs が -2(名前が見つかりません)を返し、ファイルが保存されません。 HTMLのフォームの部分は以下のようになっています。 <form enctype="multipart/form-data" method=POST action="upload1.asp"> <input type="hidden" name="MAX_FILE_SIZE" value="3000000"> ファイル名:<input type="file" name="userfile" size="60"><br /> <input type="submit" value="ファイルを送信"><br /> </form> 同じファイルを何度も送信して試してみたところ、a = Request.TotalBytes のところで、a にセットされる値が変わることがわかりました。 テストに使ったファイルでは、うまくいくときは 818 になり、うまくいかないときは 821 になりました。ファイルそのものは 413 バイトなので、付加されるヘッダ情報に違いがあるのではないかと思いました。 そこで、パケットモニタを使用して送信されるデータを見てみたところ、boundary= の後ろに指定される文字の長さによって動きが変わってくるように見えました。 マイナス連続の後ろが 7d934f3211530(13文字)→NG マイナス連続の後ろが 7d9274d11530(12文字)→OK 送信フォームの中にはパーツが2つあり、末尾のboundaryも含めて3つになりますので、1文字違うと合計で3バイト違ってきますので計算は合います。 このあたりの情報は、どこかにないでしょうか?BASP21の使い方が悪いのか、HTMLやASPの書き方が悪いのか、わからないので困っています。

  • ファイルアップロードを教えて下さい。

    お世話になります。 php初心者です。 初歩的な質問になると思いますが… ローカルでファイルのアップロードのスクリプトの練習をしてるのですが上手く行きません。 アップロードしたファイル名が全て同じになります。 ディレクトリ構成として htdocs  ├128.php  └phpbook(ディレクトリ)    └128-2.php ■128.phpの中身 <form action="./phpbook/128-2.php" enctype="MULTIPART/FORM-DATA" method="POST"> ファイル:<input type="FILE" name="upfile"> <input type="submit" value="アップロード"> </form> ■128-2.phpの中身 <?php if(move_uploaded_file($_FILES['upfile']['tmp_name'], "./htdocs/phpbook/") ==FALSE){ print "失敗しました。"; }else{ print ($_FILES['upfile']['name']); print "をアップロードしました。"; } ?> アップロードは出来てるのですが、phpbookディレクト内にphpbookという拡張子が何もついてないファイルがアップロードされてしまいます。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • BASP21のアップロードについて

    現在、BASP21を用いたファイルのアップロードを行うプログラムを作っております。 そこで困ったことがあり、質問させていただきます。 作成しているプログラムでは、ASPでBASP21(Proではない)を用いて大きなサイズのファイル(動画ファイルなど、最大で約250MB程度のファイル)をアップロードしたいと考えております。 しかしながら、50MB程度であればアップロード可能なのですが、70MB超のファイルになってくると「関数が|を返しました。」というエラーが発生してしまいます。 どうも、 ------------------------------------------------------ <% fbin=Request.Totalbytes barray=Request.BinaryRead(fbin) … … %> ------------------------------------------------------ の「barray=Request.BinaryRead(fbin)」の部分でエラーが出ているようでした。 これは、BASP21のアップロード上限をオーバーしているためのエラーなのでしょうか? そこで、このエラーの解決策、もしくはBASP21(Proではない)での最大約250MB程度のファイルをアップロードする他の方法があれば教えていただきたく、書き込みさせていただきました。 (フリーで使うことのできる、BASP21以外を用いた方法でも構いません!) 質問にお答えいただけると幸いです。 よろしくお願いいたします。

  • FileUploadで複数ファイルのアップロード

    VS2008、ASP.NETにて開発を行っています。 ファイルを指定してアップロードする処理を作成しているのですが FileUploadコントロールを使用して、一度に複数のファイルを指定し アップロードすることは不可能なのでしょうか? もし不可能であれば代替案などがあれば 参考サイトのURLでもいいので教えてください。

専門家に質問してみよう