如何根据对mysql表中记录总数的更改来执行脚本。div1可以很好地回显表中的记录数量。使用.load ajax请求,div经常每0,5秒刷新一次,因此它将始终知道有多少记录几乎是实时的。
<div class="div1">
<?php $row_cnt = mysqli_num_rows($result);
echo "table has $row_cnt records" ; ?>
</div>
<script>
function refreshdiv(){
$('.div1').load('backendform.php',function () {
$(this).unwrap();
});
}
refreshdiv();
setInterval(function(){
refreshdiv();
}, 500);
</script>在这里,我试图弄清楚,当计数在最后一分钟内改变(或者说第二,无关紧要)时,如何调用JS函数。因此,例如,如果$row_cnt已从输出5更改为6,如何触发该语句的执行?
<?php
//if record was added in last minute
if($row_cnt...)
echo '<script type="text/javascript">',
'notification();',
'</script>'
;?>
<script>我认为,如果我能够判断最后几秒钟内是否有记录被添加到Mysql表中,也是可以工作的。每个记录都有一个时间戳。但我甚至不知道是否能做到这一点,因为我没有发现类似的问题。
发布于 2016-11-12 13:45:36
可以为#div1 (如data-row )设置数据
<?php $row_cnt = mysqli_num_rows( $result ); ?>
<div class="div1" data-row="<?php echo $row_cnt ?>">
<?php echo "table has $row_cnt records"; ?>
</div>将notification函数放在setInterval中,并使用#div1 data-row进行比较:
<script>
function refreshdiv() {
$('.div1').load('backendform.php', function () {
$(this).unwrap();
});
}
refreshdiv();
function notification() {
var row = $('.div1').attr('data-row');
if (row == 2) {
//do something
}
else{
//do something
}
}
setInterval(function () {
refreshdiv();
notification();
}, 500);
</script>https://stackoverflow.com/questions/40562848
复制相似问题