php - 在网页中实时显示MySQL表

标签 php mysql ajax

我有一个不断更新的 MySQL 表,它只有不到 10 行。是否可以在网页中实时显示此表?我听说它可以使用 ajax 来完成,到目前为止我看到的所有示例仍然非常困惑。到目前为止,我只设法使用 PHP 和以下代码在网页中显示静态表:

<table>
<tr>
  <th>User ID</th>
  <th>Current Location</th>
</tr>
<?php
define('DB_SERVER', 'localhost');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', '');
define('DB_NAME','test1');

$link=mysqli_connect(DB_SERVER,DB_USERNAME,DB_PASSWORD,DB_NAME);

if($link===false){
    die("ERROR: Could not connect.". mysqli_connect_error());
}
$sql = "select * from last_seen";
$result = mysqli_query($link,$sql);
if($result->num_rows>0){
  while($row=$result->fetch_assoc()){
    echo "<tr><td>".$row["user_id"]."</td><td>".$row["location"]."</td></tr>";
  }
  echo "</table>";
}
else{
  echo "0 Results";
}
?>

但是一直没找到不用刷新页面就可以实时更新的方法。我要显示的表格如下所示:

user_id  location
-------  --------
1        room1
2        room2
3        room1

最佳答案

为什么不使用 jQuery 将输入的数据附加到表格中呢?这样它仍会显示您插入的内容而无需浪费带宽?

编辑 -

哦,等等,我忘了您可能需要 ID 才能执行更新/删除操作。我建议将该表的逻辑放在不同的 PHP 脚本中,比如 table.php,然后使用对该脚本的 AJAX 调用来刷新该“容器”?

编辑 #2 -

抱歉,可能应该举一些例子来说明我在说什么。

假设您的表在 中,我建议使用一个单独的 PHP 脚本(称为 table.php)实际为您构建此表(我会将此脚本包含在您最初加载页面时的主脚本中)。

将以下函数添加到您的 JS...

function getNewTable() {
    $("#data-table").load("table.php");
}

更新数据后,调用 getNewTable() 即可。希望对您有所帮助!

关于php - 在网页中实时显示MySQL表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50985634/

相关文章:

javascript - ajax的onreadystatechange事件返回Json对象

javascript - 在 JQuery 中单击后禁用按钮

php - 将值传递给 php 中的包含文件

php - CodeIgniter fatal error

mysql - 如何在MySQL存储过程中进行转换

mysql - 计算记录之间的时间?

javascript - node.js mysql通配符搜索无法执行

c# - 从 web 服务创建 JSON 返回 "strings"以与 jquery ajax 一起使用

php - Symfony2 : Inject current user in Service

php - 键入内容后,值会出现在文本框中