2010-05-12 2 views
2

jQuery (최신 버전) & 아약스를 사용하면 매 x 초마다 mysql db를 폴링하고 post.php는 테이블에 대한 간단한 검색 쿼리를 수행하여 1 행으로 제한합니다. (예 : SELECT id FROM TABLE LIMIT 1)jQuery/Ajax를 사용하는 Poll 데이터베이스

다른 모달/대화 상자를 화면에 표시하는 다른 jQuery UI (v1.8 사용)가 있는데, post.php가 db 대화 상자를 초기화하여 화면에 팝업해야합니다. 나는이 모든 비트를 함께 결합하는 데 문제가있는 모든 팝업 물건을 다 해냈다 - 나는 이것이 작동하기를 기대하는 몇 가지 의사 코드를 추가했다. 미리 감사드립니다.

var refreshId = setInterval(function(){ 
    $.ajax({ 
     type: "POST", 
     url: "post.php", 
     data: "", 
     success: function(html){ 
     $("#responsecontainer").html(html); 
     } 
    }); 
}, 2000);s 

/* proposed pseudocode */ 
if (ajax is successful & returns a db row to #responsecontainer) { 
    show jQueryUI modal (done this bit already fortunately) 
} 

답변

3

성공 블록 내 모든 것을 처리하지 않는 이유는 무엇입니까? 일부 데이터에 대해 설문 조사를하는 것처럼 보이면 JSON을 사용하는 것이 좋습니다.

var refreshId = setInterval(function(){ 
    $.getJSON('post.php', function(data){ 
     if (data.message.length > 0) { 
      $("#responsecontainer").html(data.message); 
      /* your jquery ui stuff here */ 
     } 
    }); 
}, 2000); 

자세한 내용은 jQuery getJSON documentation을 참조하십시오.

참고 : 데이터를 보내려면 POST를 사용해야하고, 데이터를 받으려면 POST를 사용해야합니다. 이유 및 추가 세부 정보를 알고 싶다면 REST을 참조하십시오.

+0

감사합니다. 그것은 아주 심오한 답입니다! 좋은 한 번 다시 감사드립니다 :) – Zabs

관련 문제