我有一个简单的PHP页面,它将查询发送到mySQL数据库并将数据显示在HTML表格中。
我如何每5秒钟完成一次?目前它在页面加载时执行此操作。数据库将具有更改数据,因此我尝试每5秒刷新一次代码以保持表更新。
我怎么能继续这样做?
答案 0 :(得分:2)
您需要使用客户端脚本语言(如JavaScript)让网页在向客户提供服务后执行某些操作。
具体来说,您需要使用timers和AJAX calls。您可能还会发现jQuery库对于抽象AJAX调用很有用,但这不是必需的。
答案 1 :(得分:0)
你需要使用javascript ajax。例如,
<script>
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText; // your div
}
}
xmlhttp.open("GET","getdatabase.php",true); //your php file
xmlhttp.send();
}
window.setInterval(function(){
loadXMLDoc();
}, 5000);
</script>
然后在html中,你必须有一个具有指定ID的div(myDiv)Fpr例如:
<body>
<div id="myDiv"></div>
</body>
然后在getdatabase.php中,您必须从数据库中获取值并将其回显。例如,
<?php
$con=mysqli_connect("example.com","peter","abc123","my_db");// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM Persons");
echo "<table border='1'>
<tr>
<th>Firstname</th>
<th>Lastname</th>
</tr>";
while($row = mysqli_fetch_array($result)) {
echo "<tr>";
echo "<td>" . $row['FirstName'] . "</td>";
echo "<td>" . $row['LastName'] . "</td>";
echo "</tr>";
}
echo "</table>";
mysqli_close($con);
?>
希望它有效,请访问www.w3schools.com /
了解更多信息答案 2 :(得分:-2)
使用javascript计时器。从那以后,你可以定期运行SQL命令来读取数据库。
如果仍然出现此问题,我可以发布一些示例代码。