ホームページ  >  記事  >  バックエンド開発  >  Atitit ファイルのアップロード アーキテクチャ 設計 実装メカニズム ソリューション 実践 java php c#.net js javascript c++ python

Atitit ファイルのアップロード アーキテクチャ 設計 実装メカニズム ソリューション 実践 java php c#.net js javascript c++ python

WBOY
WBOYオリジナル
2016-06-23 13:18:361303ブラウズ

t t t t t t

アップロード アーキテクチャ設計実装メカニズム ソリューション実践 Java php C#.NET JS Javascript C ++ Python

1. アップロードの要件は何ですか 2

1. 更新 2

1 .3. 3 進捗表示 2

1 .4. ブレークポイントを再開 2

1 .5. 進行状況バー付き 2

1 .7. 標準化された API 属性 2

3. 実装原理 FormData オブジェクトを使用すると、一連のキーと値のペアを使用して完全なフォームをシミュレートし、XMLHttpRequest を使用してこの「フォーム」を送信できます。バーを表示し、ファイルのアップロードの進行状況をリアルタイムで表示します。Ajaxj テクノロジーを使用する必要があります。iframe の黒ずみまで。動作原理: 実際の動作原理は、処理中にファイルの全長などのアップロードの進行状況情報をアップロードすることです。アップロードされたファイルのトン数、アップロードされたファイルの数、および送信速度がセッションに書き込まれます。クライアント ブラウザは、Ajax テクノロジを使用して新しい独立したプロセスを開き、セッションからアップロードの進行状況情報を取得し、それをリアルタイムで表示します。 Ajax テクノロジーにより、ページを更新せずにサーバー データを取得できます。セッションは、少量の顧客情報を保存するために使用できるサーバー メモリとみなすことができます。 3

5. PHP の実装 4

5.1. Java と PHP の違い 4

6. AtiUpload 5

7. リファレンス 5

1. アップロードのためのいくつかの要件

1.1.

1.2. いいえ更新

1.3. 3 進行状況表示

1.4. 再開可能なアップロード

1.6. 進行状況バー付き

1.7. 作成者:: ニックネーム: Laowaクロー(フルネーム) :: Attilax Akbar al Rapanui) 中国語名: Ai Long、電子メール: 1466519819@qq.com

転載する場合は出典を明記してください: http://www.cnblogs.com/attilax/

2. 標準化された API 属性

Fld はバックフィルされたテキストボックス名を指定します

callbackQ11 デフォルトの応答関数

Callback 指定されたコールバック関数

3. 実装原理 FormData オブジェクトを使用、一連のキーと値のペアを使用して完全なフォームをシミュレートし、XMLHttpRequest を使用してこの「フォーム」を送信できます

これは XMLHttpRequest 2.0 によって提供されるクラスです

FormData を送信するために jQuery を使用することもできます。関連するオプションを正しく設定する必要があります:

4. プログレスバーを表示し、ファイルのアップロードの進行状況をリアルタイムで表示する必要がある場合は、Ajaxj テクノロジを使用する必要があります。iframe の黒ずみ... 実際の動作原則として、アップロードされたファイルの処理中に、ファイルの全長、アップロードされた量、送信速度などのアップロードの進行状況情報がセッションに書き込まれ、クライアントのブラウザは Ajax テクノロジーを使用して新しいファイルを開きます。独立したプロセスは、セッションからアップロードの進行状況情報を取得し、それをリアルタイムで表示します。Ajax テクノロジーにより、ページを更新せずにサーバー データを取得できます。セッションは、少量の顧客情報を保存するために使用できるサーバー メモリとみなすことができます。

アップロード リスナー commons-fileupload バージョン 1.2 では、リスナーを実装してアップロード コンポーネントに追加するだけで済みます。リスナーは、progresslistener を実装する必要があります

5. PHP の実装

この一時コピー ファイルは、スクリプトが終了すると消えます。アップロードされたファイルを保存するには、それを別の場所にコピーする必要があります:

if (isset($_POST['upload'])) {

var_dump($_FILES);

/ // / 3 番目のパラメータは "true" で、複数レベルのディレクトリを作成できることを意味します。 iconv は中国語のディレクトリが文字化けするのを防ぎます

// $res=mkdir(iconv("UTF-8", "GBK", $path ),0777, true);

$f=dirname(__FILE__).'/up_tmpx2/'.time().'.jpg';

mkdir(dirname( $f),0777,true); _FILES['upfile ']['tmp_name'], $f);

//header('location: test.php');

exit;

5.1 Java と php の違い

Php は次のことを行う必要があります。メモリファイルを一時ファイルに移動

Java からの直接ストリーム書き込み

6. AtiUpload

7. 参考

atitit.ajax の実装原理とファイルアップロードの設計 - attilax のコラム - ブログチャンネル - CSDN.NET.htm

atitit.jquery ajax html5 アップロード画像ファイル

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。