PHP 在每次读取时更新 HTML 元素


PHP Update HTML elements on every read

因为我是PHP脚本的新手,我编写了一个PHP脚本,该脚本具有HTML标记,该标记可以创建一个UI,然后希望通过PHP代码块更新其UI值。

如下所示:

索引.php

<div>
<div id="ecg">
    <br/>
    <br/>
    <br/>
    <p><b>Electrocardiac Diagram &nbsp; &nbsp; &nbsp;</b></p>
    <p><b>(ECG) &nbsp; &nbsp; &nbsp;</b></p>
</div>
<div>
    <img id="ecgimg" src="images/ecg.jpg" alt="ECG" height="200" width="300" align="middle">
</div>
<br/>
<br/>
</div>
</div>

稍后如上述同一文件所述:

<?php
while (1){
$read = $file->read();
$s=0;
$y=0;
$ecg="";
$sp="";
$bp="":
$oxy="";
$temp = "";
............
$ecg=$read;
.....
?>

如何使用我从文件中读取的文本更新 HTML 文本div id="ecg" - 假设我想将文本设为

(ECG Normal)

一旦页面显示给用户,你就不能使用普通的PHP来更新页面,因为页面不再在服务器上,而是在客户端计算机上。

您需要使用 Javascript 和 AJAX 来读取文件并更新页面。

您可以阅读以下内容来帮助您:

https://api.jquery.com/jQuery.ajax/

http://www.w3schools.com/jsref/met_win_setinterval.asp

更新:

以下是您的 html 文件应该是什么样子:

<div>
    <div id="ecg">
        <?php
            $read = $file->read();
            echo $read;
        ?>
    </div>
    <div>
        <img id="ecgimg" src="images/ecg.jpg" alt="ECG" height="200" width="300" align="middle">
    </div>
    <br/>
    <br/>
</div>

这是javascript:

<script>
    setInterval(readFile, 3000);
    function readFile() {
        $.ajax({
            url: "readFile.php"
        })
       .done(function( data ) {
           $('#ecg').html(data);
        });
    }
</script>

在readFile中.php您所需要的只是:

<?php
    $read = $file->read();
    echo $read;
?>

仅此而已。