3

標準の HTML 入力を使用して Web ページを介してファイルをアップロードするのは、いつも私には扱いにくいように思えます。ユーザーが大きなファイルをアップロードしようとすると、アップロードが永遠に続く可能性があり、ファイルが実際にアップロードされているというキューが得られません。

アニメーション グラフィック バーである gif グラフィックを提供するようなことを試みましたが、アップロードされた量がユーザーに示されません。私は AJAX でプログレス バーを作成しようとさえしましたが、それらは常に醜く、正しく動作するようには見えませんでした。

これは私のクライアントの多くの問題であり、より良い方法があるかどうか尋ねられることがよくあります. 時々、FTP サイトを提供してアップロードできるようにすることもありますが、それも現実的な解決策ではありません。

HTML からの HTTP ファイルのアップロードを処理する最善の方法は何だと思いますか? インターネットで見た良いアイデア/例は何ですか?

4

8 に答える 8

1

ブラウザを介してアップロードするためのメカニズムは実際には1つだけです。ただし、アップロードの進行状況と速度を示すプログレスバーを提供することで、ドレスアップしてユーザーフレンドリーにすることができます。

これは通常、アップロードフォームを非表示のiframeにターゲティングし、AJAX呼び出しを使用して、サーバーに到達したファイルの量を確認することで実行されます。

この一例を次に示します。

Megaupload

于 2008-12-12T00:28:03.563 に答える
1

使用できるクライアント側のコントロールは多数あります。

あなたはできる

  • 独自の ActiveX コントロールを構築します。Windows/IE のみ
  • Flash を使用してファイルをキューに入れ、標準のファイル アップロード プロトコルを使用して一度に 1 つずつサーバーにアップロードします。
  • 署名付きの Java アプレットを使用してアップロードします。
  • ブラウザ プラグインを作成します。

Google からのランダムなリンク:

http://www.element-it.com/MultiPowUpload.aspx

http://www.codeproject.com/KB/aspnet/FlashUpload.aspx

http://www.dmxzone.com/forum/go/?36564

于 2008-12-11T23:29:23.367 に答える
1

HTTP 経由でプログレス バーを使用して非同期ファイル転送を行う方法はいくつかありますが、そのほとんどはFlashまたはXMLHttpRequestを使用します。

于 2008-12-11T23:32:04.517 に答える
1

これにswfuploadを追加します。これはオープン ソースのフラッシュ アップローダであり、ユーザーがフラッシュを持っていない場合に正常に機能を低下させることができます。

于 2008-12-11T23:41:45.900 に答える
0

興味深いことに、Dean BrettleによるNeatUploadアップロード コンポーネントについて誰も言及していません。興味深い機能がたくさんあり、MONO でも実行されます。

于 2011-01-22T20:49:44.240 に答える
0

mod_perl2 Apache を実行している場合は、Apache2::UploadProgressモジュールがあります。これにより、HTTP アップロード リクエストに ID が追加され、そのアップロードの進行状況をサーバーに問い合わせます。ポップアップ ウィンドウまたはアップロードを行うページ内に AJAX プログレス バーを作成するためのサポートが組み込まれています。独自の進行状況表示を作成する場合は、情報を XML または JSON データとして取得できます。

于 2009-06-30T17:26:26.357 に答える
0

YUI Uploader ユーティリティは、Flash ベースのアップローダを使用し、十分に文書化されており、試してみるためのいくつかの例があります。いくつかのプロジェクトで使用しており、お勧めします。

于 2009-06-30T17:32:29.907 に答える
0

私はこれをかなりシンプルで完全なツールとして使用しています。ベースのソースコードは適切で、必要に応じて簡単にカスタマイズできます。 AJAX ファイルのアップロード

于 2009-06-30T17:40:20.037 に答える