首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于对Mysql记录计数的更改执行脚本

问基于对Mysql记录计数的更改执行脚本
EN

Stack Overflow用户
提问于 2016-11-12 12:29:19
回答 1查看 125关注 0票数 0

如何根据对mysql表中记录总数的更改来执行脚本。div1可以很好地回显表中的记录数量。使用.load ajax请求,div经常每0,5秒刷新一次,因此它将始终知道有多少记录几乎是实时的。

代码语言:javascript
复制
 <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,如何触发该语句的执行?

代码语言:javascript
复制
<?php
//if record was added in last minute
if($row_cnt...)
echo '<script type="text/javascript">',
     'notification();',
     '</script>'
;?>
<script>

我认为,如果我能够判断最后几秒钟内是否有记录被添加到Mysql表中,也是可以工作的。每个记录都有一个时间戳。但我甚至不知道是否能做到这一点,因为我没有发现类似的问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-12 13:45:36

可以为#div1 (如data-row )设置数据

代码语言:javascript
复制
<?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进行比较:

代码语言:javascript
复制
<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>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40562848

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档