2011-07-19 12 views
3

私はAJAXについて学びたいと思っています。教えることができる簡単な問題だと思っています。ユーザーが新しいエントリを追加するテーブルがデータベースにあるとします。新しいエントリが追加されたときに、ページ全体を更新せずに最新のn個のエントリを表示するWebページを作成したいとします。この問題はどこから始めるべきですか?データベース内の変更を更新せずにWebページにプッシュする

+0

次のステップはhttp://pusher.comような技術(など) – Alfred

答えて

5

それはjQueryを使って非常に簡単ですjquery

を見て、それが

$("#your_div").load('new_entries.php'); 

ようになり//new_entries.php

include("db_connect.php"); 
$result = mysql_query("SELECT * FROM new_entries"); 
while($row = mysql_fetch_assoc($result)){ 
    echo $row['id']." has new value: ".$row['value']; 
} 

テーブルは

CREATE TABLE `new_entries` (
    `id` int NOT NULL AUTO_INCREMENT PRIMARY KEY, 
    `value` varchar(99) NOT NULL 
); 
ようになります。
+0

を使用してサイトをリアルタイムでmakeを使用する理由であるAJAX機能を、事前に作成していますこのリアルタイムにするにはsetInterval()を使用しますか? – Richard

+0

@リチャード:はい、10秒ごとにポーリングしたい場合は、setInterval()を使用してください。 – genesis

+0

@リチャード:私の受け入れを受け入れますか? – genesis

1

基本的にAJAXはこのように動作します。 ユーザーがhtmlページのフォームを更新し、[submit]をクリックするか、変更が検出されます。 サーバー接続を開き、phpまたはserverファイルに更新データを送信するjavascript関数が呼び出されます。このファイルはデータベースを更新し、新しいデータを再ロードして返します。 この同じjavascript関数は、新しいデータを送り返したサーバーからの応答を待ちます。 javascript関数は、サーバーからの新しいデータでhtmlを更新できます。 ページをリフレッシュしません。

データベースの更新を処理するには、AJAX javascript関数とサーバーサイドコードが必要です。

私が持っているべきjQueryライブラリは、それほど多くはit.this

関連する問題