如果语句 jquery 错误


Wrong if statement jquery

所以我有一个倒计时到 0 的计数器,所以当它达到 0 时,我希望它进行 pdo 更新。问题是 if 语句允许在每次页面刷新时进行更新,并且不等待计数达到 0。
我已经查看了代码,看不到我出错的地方。

<?php   $timer = '20'; ?>
window.onload = function(){
(function(){
  var counter = <?php echo $timer ; ?>;
  setInterval(function() {
    counter--;
    if (counter >= 0) {
      span = document.getElementById("count");
      span.innerHTML = counter;
    }
    // Display 'counter' wherever you want to display it.
    if (counter === 0) {

        document.getElementById( "response" ).innerHTML = "<div style='"float: right; display: inline-block; margin: 6px;'"><div class='"skip_btn'">
<?php 
    $sqll = "UPDATE users SET coins=coins+? WHERE username=?";
    $q = $db->prepare($sqll);
    $q->execute(array('1',$_SESSION['username']));
    $sqll2 = "UPDATE websites SET clicks_left=clicks_left-? WHERE id=?";
    $q2 = $db->prepare($sqll2);
    $q2->execute(array('1',$row['id']));
?>
</div></div><div style='"clear:both;'"></div>";
    }
  }, 1000);
})();
}

我刚刚修复了它,使用解析器购买

<script type="text/javascript" src="jquery.js"></script>          
<script type="text/javascript">
// Check if the page has loaded completely                                         
$(document).ready( function() { 
    setTimeout( function() { 
        $('#some_id').load('parser.php'); 
    }, 10000); 
}); 
</script>

感谢您对网站的热烈欢迎。

使用 jQuery 尝试以下操作:

$(document).ready(function() {
    var counter = 20;
    setInterval(function() {
        if( counter == 0 ) {
            $.post("url/to/php");
        }
        else {
            $("#div_for_showing_counter").html(counter);
            counter--;
        }
    }, 1000);
});

这样,您就可以将客户端与服务器端分开。您可以在 php 文件中执行任何您想要的操作。如果您需要回调或需要将数据传递给 php 文件,则只需将 $.post 修改为如下所示:

$.post("url/to/php", { "key1": "value1", "key2": "value2" }, function(data) {
    alert(data);
});