2012-02-21 23 views
1

私はシンプルなチャットシステムを構築しようとしていますが、メッセージを送信するときに何をする必要があるのか​​分かりません。そのメッセージは別のコンピュータのブラウザで更新されます。簡単なフィードを更新する方法/ jqueryとPHPで自動的にチャットするには?

今すぐメッセージを送信すると、データベースにajaxコールで保存されます。同じ瞬間に、そのメッセージがチャットに表示されます。

任意のアイデア?あなたは、いくつかの間隔でサーバーと更新をポーリングする必要が

おかげ

+1

は非常によく似た質問にこの回答を参照してください。http://stackoverflow.com/questions/9363572/php-reload-chat-box/9363721#9363721 – Basti

答えて

0

は、のsetInterval()関数を見てみましょう。新しいリッスンチャットデータで更新するだけで十分です。

1

更新のために一定の時間間隔でサーバーをチェックする必要があります。そのためにsetInterval()関数を使用することができます。

以下は簡単な例で、chatdivという名前のdivのinnerhtmlで3秒ごとにチャットメッセージを更新します。

chatidは、chatidという名前の隠しフィールドに格納する必要があります。

function updateRow() 
{ 
    chatid = $("#chatid").val(); //hidden field which contains the current chat id. 
    $.ajax({ 
     type: "POST", 
     url: "update.php", 
     data: {"chatid":chatid}, 
     success: function (output) { 
      $('#chatdiv').html(output); //updates the output to a div 
     } 
    }); 
} 
setInterval("updateRow()",3000); //call updateRow() function every 3 seconds. 

update.phpでは、データベースからチャットメッセージを取得してエコーすることができます。 例えば、

$id = $_POST['chatid']; 
$msg = $dbcon->queryUniqueValue("select message from chat where id=$id"); 
echo $msg; 
関連する問題