如何使用jquery和php自动更新简单的feed / chat?

时间:2012-02-21 17:56:13

标签: php jquery ajax chat

我正在尝试构建一个简单的聊天系统,但我不确定在提交我的消息时需要做什么,该消息将在另一台计算机浏览器上更新。

现在,当我提交消息时,它会通过ajax调用存储在数据库中,同时我会在聊天中显示该消息。

任何想法?

感谢

2 个答案:

答案 0 :(得分: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;

答案 1 :(得分:0)

您需要轮询服务器并以某个间隔更新,请查看setInterval()函数。只需更新每个听众的新聊天数据,应该适合您的情况。