我几乎完成了几个月前创建的一个网站的编码工作。我已经完成了基础,但是,我想添加一些新的功能,使它更快,并增加一些闪闪发光。
目前,我有一个系统,通过php查询数据库,看看是否有任何未读的消息,每次页面发出新的页面请求。如果用户有未读消息,php会在引用中回显未读消息的数量。
如何使用ajax或jquery在不发出新页面请求的情况下回显大量可怕的消息?
谢谢
发布于 2010-11-13 00:45:52
您可以设置一个定时请求,如下所示:
var element = $('...');
// new get request every minute - 60*1000ms
var interval = setInterval( function(){
element.load('/phpfile.php');
}, 60000 );发布于 2010-11-13 01:37:28
在/phpfile.php输出结果中,将数组编码为json格式。例如,您可能有一个查询
<?php
include 'config.php';
include 'opendb.php';
$query = "SELECT message FROM messages";
$result = mysql_query($query);
$jarray = array();
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
$jarray[] = array("message"=>$row['message']);
}
echo json_encode($jarray);
include 'closedb.php';
?>使用ajax.获取 json数组
var messagesContainer = $('messages');
$.getJSON('phpfile.php',function(data)
{
$.each(data, function(i,stuff){
$("<div class='msg'>"+stuff.message+"</div>").prependTo(messagesContainer);
}
})发布于 2010-11-13 00:44:23
创建一个只回显未读消息数量的脚本(不包含任何其他超文本标记语言),然后使用jQuery获取它:
$('#span_with_numer_of_messages').load('your_unread_messages_script.php');https://stackoverflow.com/questions/4166934
复制相似问题