从SQL数据库动态收集数据的最佳方法是什么

时间:2018-08-08 20:00:47

标签: php jquery sql ajax

因此,目前我有一个系统可以从SQl数据库中提取数据,并以单独的计数显示详细信息。

例如,总票证,支持票证,客户票证等。

仅当用户重新加载页面或导航到系统的另一部分时,才更新此数据。

我希望对整个系统进行改造,以使数据始终有效,而不是用户需要重新加载页面。

我一直在研究JQuery和AJAX,但是我发现的所有信息仍然需要用户输入。

因此,我将为您提供一些建议或链接,以介绍如何设置不需要用户输入的系统,而是每隔X秒提取一次数据并更新页面而不刷新页面。

然后,我还希望能够扩展此功能,以便在记录新票证等时显示页内警报。

1 个答案:

答案 0 :(得分:2)

  

“我找到的所有信息仍然需要用户输入。”

...不确定您一直在阅读什么,但是不,您可以设置超时或时间间隔,以便定期进行固定的AJAX调用,以获取最新数据,而无需用户干预。

这是一个演示。在这种情况下,它每次都会从静态源中追加相同的数据,但是如果您的源返回后台正在更新的数据库数据,那么您可能想要替换已经存在的数据而不是追加。这是一个小细节,但值得澄清。

//when called, this will make an AJAX call and append data from the response to the "content" div
function getData() {
  $.ajax({
    method: "GET",
    url: "https://api.myjson.com/bins/df42s",
    dataType: "json"
  }).done(function(response) {
    $("#content").append("<br/>" + response.name);
  });
}

//initial fetch of the data
getData();

//then set the same function to run at 5 second intervals:
var interval = setInterval(getData, 5000);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="content">

请注意不要将时间间隔设置得太频繁,否则您的服务器可能会过载,并且/或者发现一个AJAX调用在下一个调用之前尚未完成。这两种情况都不是很理想的。

有关setInterval的更多信息:https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setInterval