使用Ajax每1秒循环一次MySQL结果

时间:2015-06-09 13:10:28

标签: php jquery mysql ajax

我有一个类从数据库中获取结果并且结果正在循环,并且数据库正在定期更新,但我不想因为某些原因而不断刷新页面。

//file class.php

 class order {
     function getOrders(){
     //gets data from database

     }

 }

//file main.php

$ai = new order();

$orders = $ai->getOrders();

foreach($orders AS $order){

 //data displayed in a table
}

我希望在没有页面重新加载的情况下自动更新表格。

我知道我必须使用ajax,但我不知道在oop

中实现什么

2 个答案:

答案 0 :(得分:1)

使用类似的东西。



$(function () {
  setInterval(function () {
    $("#liveTable").load("path/to/orderList");
  }, 1000);
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div id="liveTable"></div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

您需要在html页面上使用javascript和jQuery,以便重新加载页面的一部分。

您可以在html页面的头部添加以下内容:

<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>
<script>
$(document).ready(function()
{
    theIntervalHandle = setInterval(fetchNewOrders,3000);
});

function fetchNewOrders()
{
    $('#ordersDiv').load('http://your.web.address/class.php');
}
</script>

那个

<div id="ordersDiv"></div>

在html文件的正文中,您希望显示动态内容。 这假设创建输出的文件名为class.php,并且每秒3秒就会经常获取数据并且如果您的流量增加超过几十个用户就会导致问题......