【问题标题】:Increasing value in database after time interval时间间隔后增加数据库中的值
【发布时间】:2014-04-03 20:44:29
【问题描述】:

我正在开发一个 codeigniter 项目,在该项目中,我正在为每部被点击的电影制作一个计数器。现在我想如果用户单击电影链接,用户将被定向到电影页面,30 秒后计数器将增加到 1。目前,每次单击时计数器都会增加。有什么帮助???

【问题讨论】:

  • 使用 JavaScript setTimeout 等待 30 秒然后使用 AJAX 向服务器发送 post 请求?当然是在电影页面上。

标签: php jquery ajax codeigniter


【解决方案1】:

在这种情况下,即使每次刷新,Countr 也会增加,无论您在 30 秒的间隔内说什么(您可以使用 ajax 请求和 30 秒的超时)但这似乎是一个错误的代码,如果有人在 30 秒之前关闭它怎么办sec(浏览器),你没有得到任何增量....

如果您想设置唯一(视图),请使用基于浏览器/IP/时间(对于通用设置,您可以提前进行设置)并且每次收到计数器添加请求时,请检查您的数据库是否具有相同的 IP/浏览器和像你说的那样减少持续时间(30 秒或 1 分钟)然后不要添加其他明智的添加 1 到脚本。

【讨论】:

    【解决方案2】:

    您可以为此使用 javascript。

    示例代码(jQuery):

    $(document).ready( function() {
        setTimeout(function() {
            $.post( "ajax/count_movie.php?id=3", function( data ) {
              alert("I'm done!");
            });
        }, 30000);
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-26
      • 1970-01-01
      • 2016-09-24
      • 2013-12-17
      • 1970-01-01
      相关资源
      最近更新 更多