2011-12-17 7 views
2

私は1つ以上の(大きな)ファイルを添付できるフォームを持っています。私は、次のことを達成したい:複数のファイルをアップロードするためのベスト戦略

  • ファイルのアップロードの進行状況は、エラーがで発生した場合、アップロードプロセスはいつでも

  • で、ユーザによって中断することができ、ユーザに

  • を示されなければなりませんフォームの他のデータを送信した後、ファイルを再度要求しないでください。ファイルやフォームデータがアヤックスを通じて別個独立に掲載されている場合は、他の言葉で、ファイルはフォームを再提出することができるにもかかわらず、一度だけ、複数回

  • をアップロードされ、アップロードされたが、未使用のファイルは自動的に

  • をパージする必要があります
  • セキュリティに関する考慮事項:例ファイルが別々に送信される場合は、悪意のある攻撃者がセッションIDやブラウザで利用可能なその他の情報を知って、サーバー上のファイルを上書きすることはできません。 Firefox; IE9が望ましい

  • サーバー側:サードパーティのフレームワークを推奨しないでください。解決策は、それが自分の好きな言語でそれを実装するために誰を可能にするように普遍的でなければなりません - いくつかのヒントが何であるかはPythonやRuby、PHP、Perlの、など(およびおそらくJavaScriptの)

上記を考慮すると、この機能を実装するためのヒントとベストプラクティス

+0

あなたは、ユーザがファイル選択ウィンドウで複数のファイルを選択できるようにしたいと思っています。 –

+0

@Julien Bourdon:これは必須ではありませんが、最新のブラウザーでは可能です。 – mojuba

答えて

1

swfuploadはかなり素晴らしいです。よく文書化され、非常にうまく動作します。 http://swfupload.org/

+0

それは私が提案しようとしていた答えです。私自身の経験から、これは唯一の信頼できるソリューションです。 –

+0

私の理解を深めるために、もう一度、それは物事のサーバー側をカバーしていません。 – mojuba

+0

真実ですが、サーバー側にも要件や制限はありません。これは、最後の箇条書きの読み方です。あなたは何でも好きなものを使うことができます。 – mkoistinen

0

ユーザーが最新バージョンのブラウザを使用している場合は、JavaScriptからHTML5ファイルへのアクセスを使用できます。私は見つけるまた、あなたは(そこにはドキュメントはまだありませんが、JSコードはかなり単純である)、ここでのRuby on Railsのためhttp://github.com/Ximik/simple_attachments

+0

これまではこのチュートリアルを見てきましたが、サーバー側の戦略については言及していません。ファイルの保存場所とパージ方法、複数の再送信の際にフォームインスタンスに結び付ける方法などが含まれます。 – mojuba

+0

次に、レールを使用する場合、実際に自分のコードを見てください。これのほとんどはそこで行われるか、数日後に行われます。 – Ximik

関連する問題