setInterval(function(){
jQuery.ajax({
type:"POST",
url:"111.php",
global:false,
dataType:"json",
data:"action=ajax",
success:function(data){
jQuery("p").html(data.shopid)
},
error:function()
{
alert("err: *** 作错误")
}
})
}, 2000)
php部分更简单
if($_POST['action']=='ajax'){
$result=$db->get_one("select * from shtq_shop order by rand() limit 1")
echo json_encode($result)exit
}
原理很简单 setInterval() 定时执行一个ajax,后台部分执行数据库查询 获得json格式数组
通过回调函数将返回的内容插入到<p></p>中
1、我是用php的,对jsp不熟,但是ajax技术过程应该是通用的,希望能给你有所提示。ajax在实现无刷新请求服务器端数据时,你返回用了三个输出流,这样ajax只能捕捉到第一个输出,后面的程序就不会执行了(或者有执行的,但是不会再返回给前台页面了,只有第一个才会返回给前台页面)。所以我建议你可以用一个数组将你要返回的这三组数据统一到数组中,然后将数组统一传递到前台页面。在php中用到了json,我觉得问题就在于此。
2、另外由于ajax是无刷新的,而当你读取数据库中数据,想要显示数据时,有些必须要刷新页面,要不然你就得在页面加载时就将所有数据传递给页面,如果你用了ajax获取到了后台页面,但此时页面已经加载完成,这样就不会显示出你从后端读出的数据,你可以在js里用reload函数,重载本页面就可以实现。这里的问题经常是会在d出显示或者用ajax删除时出现的问题,给你说下希望能能给你提供思路~~
如果是sql server 可以用调度定时自动复制或更新到另一个数据库。ORECAl等其他大型数据库类似做法。
小型数据库的话只能编程了,比如delphi。用时间控件来实现
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)