我创建了一个网站,用于检索已上传到我的数据库的文本。这个问题是我想要每秒刷新该数据库中的内容。但我无法在任何地方找到如何做到这一点。我希望这在后台完成。如果可能的话,我稍后会制作教科书以将数据输入服务器,也不是完全刷新而是在后台发送内容。谢谢你,每个答案都很重要。
<?php
$servername = "localhost";
$username = "root";
$password = "root";
$dbname = "myDB";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT id, firstname, lastname FROM MyGuests ORDER BY id ASC LIMIT 10";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "<div id='message'> <br> ". $row["firstname"]. " " . $row["lastname"] . "<br> </div>";
}
} else {
echo "0 results";
}
$conn->close();
?>
最佳答案
在文件中,简单地回显结果。然后在另一个文件中,将回显结果加载到 div 中,如下所示:
db_results.php
将输出结果的文件:
<?php
$servername = "localhost";
$username = "root";
$password = "root";
$dbname = "myDB";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT id, firstname, lastname FROM MyGuests ORDER BY id ASC LIMIT 10";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "<p>". $row["firstname"]. " " . $row["lastname"] . "</p>";
}
} else {
echo "0 results";
}
$conn->close();
?>
display.php
文件,它将在 div 中刷新结果:
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function(){
setInterval(function() {
$("#load_results").load("db_results.php");
}, 1000);
});
</script>
</head>
<body>
<div id = "load_results"></div>
</body>
</html>
db_results.php
文件将查询数据库,获取结果并将结果输出。第二个文件 (display.php
) 将第一个文件加载到一个 div 中并每秒刷新一次该 div,因此更新后的结果将加载到相关的 div 中。
P.S.:将两个文件放在同一目录或相应地调整路径。
关于php - 来自数据库 AJAX 的后台刷新信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34892103/