II。JSON
1. 何が JSONは
JSON:JavaScriptオブジェクト表記(JSのオブジェクト表記)であるデータ交換フォーマット、 XMLはデータ交換フォーマットである、JSONのコントラストXMLが生成され、より便利になるように処理されます。
そのため、多くの地域では、 JSONは徐々に交換されたXML を使用します。
予測インタフェースのデータフォーマット特定の組織によって必要とされると、それを提供するために、各言語の最良のデータ形式は、このように、識別することができる XML またはJSONを上に塗布しました。
2. JSONを使用
2.1 javascriptの内部JSONを反映します
JSON でのJavaScriptのその内部オブジェクトリテラル
VAR OBJ = { 名前:値の名前:値名:関数(){}}
2. 2 により PHP 生成JSON 情報を
json_encode(配列/ オブジェクト)------------>が生成JSON 情報
2 。3 PHP プロセスのJSON 情報
json_decode(JSON用の情報); 抗符号化されたJSON 情報
JSONの文字列抗符号化された情報は、現在の言語情報が認識可能となります。
2 。4 JavaScriptの受信処理のJSON 情報
evalの()で受け取ったJSON 文字列実際のオブジェクト情報に
3. JSON形式の変換AJAX ページを更新せず
アヤックスすべての要求は3によって占有されるように、サーバー、帯域幅、サーバリソース、ユーザーの待ち時間や他のリソースからの3つの情報を取得する必要があり、我々は、最適化を実行する必要があります。変更しないのCSS スタイルを、HTML の標準的な記号 のお客様への最後手動で生成され、作業を軽減するためのサーバー。
その後、我々はJSONデータを渡すことができますバック転送フォーマットを(前のhtml タグ形式)
JSONの使用の利点:
Ajaxの使用量があり、帯域幅とユーザーの待ち時間、サーバーのリソースが 節約を持っています
JSON形式での使用AJAX ユーザーの待ち時間に基づく帯域幅は、サーバーのリソースがさらに節約を行きます。
三。提出された情報を更新せずにフォーム
1. フォーム情報を収集
データオブジェクトを形成FORMDATA新技術の使用は、情報フォームを集める素早く実現することができます。
いるFormDataはあるHTML5 、それが主流のブラウザで正常に使用できる新しい技術です。
要約:
- JSON データ交換フォーマット
PHP 里边:json_encode()json_decode();
ジャバスクリプト:内部のeval()受信処理するためのJSON 文字列を
- JSONのページを更新せずに変換
- 使用 FORMDATA 情報フォームの迅速な収集を実現
2. AJAX 添付ファイルのアップロードを実現
<フォームのenctype =」マルチパート/フォームデータ」>
<input type =」ファイル」>
サーバー: $ _FILES 情報受信添付ファイル(名前/エラー/サイズ/タイプ / tmp_name)
move_uploaded_file(一時的な別館、別館真のパス名)。
アクセサリは、情報を収集します:
DOM の方法は、一般情報のみのフォームフィールドを収集することができ、およびセキュリティ上の制約のために、ブラウザもで禁止javascriptのローカル言語ファイルの操作。
いるFormDataアクセサリーは、情報収集、共通のフォームフィールドを実現するために使用することができます し、 ファイル・ドメインのアップロード 収集することができます。
2.1 使用いるFormDataの注:
①各フォームフィールドには、name属性を持っている必要があります
② でフォームを提供せずに内部のタグのenctype =「マルチパート/フォームデータを 」 属性(アップロードドメインを有するIM )
③AJAX 転送FORMDATA 提供するために必要なデータ setRequestHeaderを()関数
3. アップロードの進行状況バーは、大きな添付ファイルを設定されています
3.1 php.iniを開いた大きな添付ファイルが制限をアップロードします:
四。Ajaxのチャットルーム
1. 分析
2. タイムリーなチャットショー
(TABLE `message`でのCREATE
`id`はint(11)NOT NULL AUTO_INCREMENT、
`msg`テキスト、
`sender` VARCHAR(32)NOT NULL DEFAULT ''、
`receiver`のVARCHAR(32)NOT NULL DEFAULT ''、
`color` CHAR(7)NOT NULL DEFAULT ''、
`biaoqing` VARCHAR(32)NOT NULL DEFAULT ''、
`add_time`日時NOT NULL DEFAULT '0000-00-00午後12時00分○○秒'
PRIMARY KEY( `id`)
)ENGINE =のInnoDB DEFAULT CHARSET = utf8を
3. チャットメッセージを公開
4. チャットの最適化
①情報のオーバーフローを避けるために、スクロールバーを設定します。
とき最下段のスクロールバー②トーク番組
divnode.scrollHeight; 取得のdiv 要素の高さ(スクロールバーなどを)
divnode.scrollTop; 提供折返し高さのスクロールバー
V. 天気予報の設定
AJAX ブラウザの制限により、クロスドメインリクエストを禁止
解決策:使用して PHPのプロキシを、クロスドメインは、気象情報を要求します
1. 天気情報取得注:
異なる領域は、領域に対応する気象情報を表示する必要があります
ユーザのIPへのアクセスゲインアドレスを介して情報を IP 対応するアドレス取得街の情報を
街を出るだけでなく、街の情報符号化された情報を取得します。
IP -------> 都市------- 「エンコーディング
www.tianqi.com サイトには、IP / 都市/ 関係は、コーディングがうまく処理された、直接都市に対応する気象情報を取得する呼び出すことができます。
要約:
- アヤックス+いるFormData 添付ファイルのアップロードを実現
- 大きな添付ファイルには、プログレスバーの設定をアップロード
AJAXは、オブジェクト.upload.onprogress 各区間イベント、0.1秒が実装プロセスがサイズをアップロードした添付イベントオブジェクトの合計サイズが知覚することができる一度実行するために。
- Ajaxのチャットルーム
- 天気予報
AJAX 、ブラウザの制限は、クロスドメインリクエストを禁止するため、(使用してPHPのプロキシを解きます)
求人:
- JSON ページを更新せずに、変換効果