2015-11-03 2 views
1

Я хочу, чтобы в реальном времени получал данные из моей базы данных, но отображал ошибку. Ajax код здесь:AJAX Нет данных ERR_EMPTY_RESPONSE

<script> 
window.setInterval(

function() { 
    checkCustomer(); 


    check...... etc.... 



}, 1000); 

function checkCustomer() { //ajax to getCustomerTotal.php 

if (window.XMLHttpRequest) 
{// code for IE7+, Firefox, Chrome, Opera, Safari 
    xmlhttp = new XMLHttpRequest(); 
} 
else 
{// code for IE6, IE5 
    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
} 
xmlhttp.onreadystatechange = function() 
{ 
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) 
    { 
     customerTotal = xmlhttp.responseText; 
     document.getElementById("customerTotal").innerHTML = customerTotal; 
    } 
} 
xmlhttp.open("POST", "getCustomerTotal.php", false); 
xmlhttp.send(null); 
} 

PHP код здесь:

<?php 
include 'connect.php'; 
$query=mysql_query("select * from users"); 
$num_rows = mysql_num_rows($query); 
echo $num_rows; 
?> 

Выше мой код, если установить 1000 или 10000 миллисекунд затем отображать "Данные не получены ERR_EMPTY_RESPONSE" Если я устанавливаю 30000 в 60000, то нет проблем, но мне нужно в реальном времени.

+0

Эта проблема сохраняется только в хромированных или во всех браузерах? – Thamilan

+1

Почему вы заботитесь о // кодексе для IE6, IE5? –

+0

http или https протокол? –

ответ

0

Есть некоторые ошибки в ответе AJAX, иногда он не показывает результат для небольшой временной задержки, если мы определяем длительную задержку, тогда проблем не будет. Та же проблема была со мной, я выяснил ниже решение. Попробуйте ниже Ajax код.

<script> 
       function showVal() 
       {    

        var xmlhttp;  
        if (window.XMLHttpRequest) 
        { 
         xmlhttp=new XMLHttpRequest(); 
        } 
        else 
        { 
         xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
        } 
        xmlhttp.onreadystatechange=function() 
        { 
         if (xmlhttp.readyState==4 && xmlhttp.status==200) 
         { 
          document.getElementById("customerTotal").innerHTML=xmlhttp.responseText; 
         } 
        } 

        xmlhttp.open("POST", "getCustomerTotal.php", true); 
        xmlhttp.send(); 
       } 


      </script> 
+0

. Я пробую этот код уже, но та же проблема. – Ricky

+0

Я пытаюсь использовать метод _GET_ и _REQUEST_, не будет отображать ошибку. но сделает мой сайт быстрее. – Ricky

+0

удалять нулевое значение при отправке запроса, например. 'xmlhttp.send()' –

Смежные вопросы