对于我的网站,我回应了$玩家。问题是这不是替换回声而是创建一个新回声。如何清除旧回声或删除旧回声或编辑它以使其只显示一个回声。
如果你不明白我的意思(我不怪你),这就是网站:
代码:
while(isset($_GET['hello'])) {
sleep(1);
$result = $conn->query("SELECT id FROM gamecode WHERE gamecode = '$gameCode'");
$players = $result->num_rows;
echo "<h4>$players Players</h4>";
flush();
}
非常感谢你给我的任何帮助。
答案 0 :(得分:1)
您将需要服务器端(PHP)和客户端(javascript)来实现此目标。
服务器端:只回显一次,丢弃while循环;
客户端:每n秒呼叫服务器端(ajax或刷新整个页面)以获取最新数据。
示例:
(1)创建一个新的php文件&#34; nowStat.php&#34;,并将您的数据库查询移动到此文件中,如:
$result = $conn->query("SELECT id FROM gamecode WHERE gamecode = '$gameCode'");
$players = $result->num_rows;
echo "$players Players";
(2)在您的createcode.php文件中,定义一个空的<h4>
或<div>
,其ID为:
<h4 id="playerStatus"></h4>
然后在同一个文件中使用jQuery / Ajax每5秒检索一次状态:
setInterval(function() { $("#playerStatus").load("nowStat.php"); }, 5000);
这是一个关于jQuery / Ajax的非常简单的教程:https://www.w3schools.com/jquery/jquery_ajax_intro.asp
答案 1 :(得分:0)
删除echo
循环中的while
语句,因为只要hello
为真,代码就会被触发