用另一个php页面更新php文件中的div

时间:2017-09-06 17:31:10

标签: php jquery html mysql

我正在尝试将mysql数据加载到php页面中的div中。但我希望这些数据能够保持最新状态并每10秒左右刷新一次。

我在网上看了几个教程,但我不知道自己做错了什么。

下面是从DB获取数据并显示在表格中的php脚本。

<?php
require "conn.php";

$query = "SELECT * FROM turns where attended = 0";
$waiting = $conn->query($query);
    if ($waiting->num_rows > 0) 
    {
            echo "<table width='80%'><tr>";
            echo "<th> Customer Number </th>";
            echo "<th> Waiting Since </th> </tr>";
            // output data of each row
            while($row = $waiting->fetch_assoc()) 
            {
            $client = $row["id"];
            $waitingSince = $row ["created_time"];
            echo "<tr><td align='center'>".$client."</td>";
            echo "<td align='center'>".$waitingSince."</td></tr>";
            }
    }


?>

我一直在尝试将该文件加载到另一个页面div中,但我得到的只是空白。

这是另一页attend.php:

<html>
<head>
<script 
src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
function updateDiv()
{
    $("#result").load("fetchLine.php");
}

</script>
</head>
<body>
<div id="result" style="border:solid 2px red; width: 100%;">
</div>
</body>
</html>

在添加间隔刷新功能之前,我一直在尝试加载内容。 attend.php和fetchLine.php都在同一个目录中

1 个答案:

答案 0 :(得分:-1)

实现这一目标的最佳选择是设置一个像API位一样的端点 /getData?blahparam=2 - &GT;在那个页面上只放了JSON。

function getData()
{
//Do ajax call here
}

//Javascript Loop either a set time out or a recursive loop using set time out or an every 10secs get...

我会说使用angularjs 1.6 - 因为它简单而不是很重...但你可以简单地在正常的jquery或angularjs中循环json并让数据自动更新或替换自己。

  1. 制作提供json的端点
  2. 写递归ajax抓取使用settimeout或setinterval的数据javascript / jquery
  3. 使用一大块html更新有问题的div或使用angular来更新$ scope变量。