Ajax - 每秒检查数据库表值

时间:2015-02-12 09:54:02

标签: php mysql ajax

我试图每秒检查数据库表中字段的值,然后在html div中打印出来。由于某种原因,这是行不通的。 Inspector(F12)不会抛出任何错误消息。这是我的代码。如果有人能指出我正确的方向,我们非常感激:

php代码:

echo("<input type='hidden' id='hidSessionOwner' value='".$userid."'/>");

Ajax代码:

function check_invited_users(){
    $.ajax({
        type: 'POST',
        url: '/checkinvitedusers.php',
        data: {
            id: $('#hidSessionOwner').val()
        },
        dataType: 'json',
        success: function(response){
            if(console) console.log('Status = ' + response.status);
            if(response.status > 0){
            $('#divInvited').html(response);

            }
        }
    });
}
var check_search_status_interval;
$(document).ready(function(){
    check_search_status_interval  = setInterval(function() {
            check_invited_users();
    }, 1000);
});

这是html:

<div id="divInvited"></div>

以下是checkinvitedusers.php文件中的代码:

$user_id = ($_POST['id']);

// Build SQL
$invite_search_sql = "select count from class_user_invites where user_id=".$user_id;
$result = mysql_query($invite_search_sql, $con) or die ("Error in query: $invite_search_sql " . mysql_error());
$row = mysql_fetch_array($result);
$response['status'] = $row[0];

echo json_encode($response);

2 个答案:

答案 0 :(得分:1)

Ajax函数中需要async:false选项。

答案 1 :(得分:1)

使用ASYNC FLASE选项并尝试。我想你可以解决这个问题                                                                     function check_invited_users(){ $.ajax({ type: 'POST', url: '/checkinvitedusers.php', data: $("#hidSessionOwner").serialize(), async: false

试试这个,看看。我认为这是你问题的解决方案。