就我而言,我在X秒后自动刷新。但我希望只在插入或更新新数据时才刷新它。
这是我的剧本。
refresh.php
<script src="jquery-1.4.js"></script>
<script>
$(document).ready(function() {
$("#responsecontainer").load("refreshnow.php");
var refreshId = setInterval(function() {
$("#responsecontainer").load('refreshnow.php?randval='+ Math.random());
}, 1000);
});
</script>
<div id="responsecontainer"></div>
refreshnow.php
<?php
$query = mysqli_query($connection,"select * from `table`");
$rows = mysqli_num_rows($query);
?>
<table style="background:#F0F0F0;" border=1 style="border-collapse:collapse">
<tr>
<th>Name</th>
<th>Job</th>
</tr>
<tbody>
<?php
while($result = mysqli_fetch_array($query)){
echo "<tr>";
echo "<td>".$result["name"]."</td>";
echo "<td>".$result["job"]."</td>";
echo "</tr>";
}
?>
</tbody>
那么,在新的数据插入或更新后,是否可以自动加载新数据而不会在x秒后刷新?
答案 0 :(得分:0)
如果你想使用你现有的代码,只需在mysql表中添加另一列(如果你有一个配置或设置表,这将是更简单的,如果不是你插入的每个记录的广告时间戳)和值时间(),每次插入/修改行时,它都会更新数据库中的时间戳。 然后只需执行以下查询:
"select timestamp_column from `settings_table` order by timestamp_column limimt 1"
If ($result["timestamp_column"]+1000>=time()){
//do the refreshnow.php code here
}
希望它有所帮助, 干杯