应用背景:
公司项目需要缓存技术来完成实时显示,再完成显示功能后,要删除缓存。前期项目中使用的方法是数据库存储临时数据,待使用完之后再删掉,但是这对实时显示的效果有些影响,数据存入数据库的时间以及前端调用数据库数据的时间将会更长,并会影响到其它功能使用数据库,数据库方法如下,仅供参考:
前端调用数据库数据方法会用到两个页面(这里只讨论调用数据库的方法):AJAX.php
///// AJAX.php
<!DOCTYPE html>
<html>
<head>
<title></title>
<script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.js"></script>
</head>
<body>
<script type="text/javascript">
var show = true;
window.onload = function() {
getDATA();
}
function getDATA() {
$.ajax({
url:"JsonDATA.php",
type:"GET",
dataType:"json",
success: function(data) {
document.getElementById('testTXT1').value = data.val1;
document.getElementById('testTXT2').value = data.val2;
if (show) {
setTimeout(getDATA, 1000);
}
}
});
}
function stop() {
show = false;
}
</script>
<input type="text" id="testTXT1">
<input type="text" id="testTXT2">
<input type="button" id="testSTOP" value="停止" onclick="stop()">
</body>
</html>
JsonDATA.php
///// JsonDATA.php
<?php
$link = new mysqli(HOST,USERNAME,PASSWORD,DATABASE);//连接自己的数据库
if (!$link) {
echo "Error: Unable to connect to MySQL.";
exit;
}
$query = "SELECT val1,val2 FROM test ORDER BY `id` DESC limit 1;";//获取数据库中数据
$result = mysqli_query($link, $query);
while ($finfo = mysqli_fetch_array($result)){
$array['val1'] = $finfo['val1'];
$array['val2'] = $finfo['val2'];
}
echo json_encode($array);//以json格式输出
?>