如果语句jquery错误

时间:2013-10-24 00:13:19

标签: php jquery html

所以我有一个倒数到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>

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

1 个答案:

答案 0 :(得分:1)

使用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);
});