홈으로 | 무료회원가입 | 아이디/비번찾기
추천음악방송
AJAX 반복처리 및 설명 예제
6년 전
<html>
    <body>
<script language="javascript">


function createRequestObject() //object 생성이 가능한 브라우저인지 확인.
{
    var req;
    //
    if(window.XMLHttpRequest) // 브라우져가 XMLHttpRequest 객체를 가지고 있는지 판단
    {
        // Firefox, Safari, Opera...
        req = new XMLHttpRequest();
    }
    else if(window.ActiveXObject) // 브라우가 ActiveX 를 받아올 수 있는지 판단
    {
        // Internet Explorer 5+
        req = new ActiveXObject("Microsoft.XMLHTTP");
    }
    else // HTTP 통신을 할수 없는 브라우져인 경우
    {
        //"Your Browser Does Not Support This Script - Please Upgrade Your Browser ASAP");
    }
    return req; // 브라우져에 맞는 HTTP 객체를 가져와 객체 리턴
}


// XMLHttpRequest object생성 [위의 함수로 브라우저에 맞는 객체를 받아옴]
var http = createRequestObject();


function sendRequest(page) // 데이터 페이지 불러오기
{
    // get 방식으로 파라미터로 넘겨받은 객체를 가져오도록 셋팅
    http.open('get', page);
    http.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT"); //캐싱방지ㅋ
    // 페이지로부터의 onreadystatechange 즉 읽어들일 수 있다는 상태값을 받으면 handleResponse 함수를 실행하도록 함
    http.onreadystatechange = handleResponse;
    // 페이지를 가져오도록 호출
    http.send(null);
}


function handleResponse() // 불러온값 처리
{
    // http.readyState 4 인경우 객체를 호출한 페이지로부터 읽어들일 준비가 됐다는 말이고
    // http.status 가 200 인 경우는 에러가 발생하지 않고 온전히 컨텐츠가 로딩됐음을 의미 합니다.
    // http.status 상태는 여러가지가 있을수 있는데 페이지를 찾을수 없을경우 404 컴파일이 안됐을경우 500
    // 페이지 접속 권한이 없을경우 403 등의 오류등을 가져옵니다.
    if(http.readyState == 4 && http.status == 200)
    {
        // Text returned FROM the PHP script
        // http 객체로 받아온 페이지의 컨텐츠 TEXT 를 받아와 response 변수에 저장
        var response = http.responseText;
        // 받아온 값이 유효하면
        if(response)
        {
            // 페이지에서 불러온 값을 id 가 dbstatus 인객체에 표시
            document.getElementById("dbstatus").innerHTML = response;
        }
    }
}


function repeatloop() //최종적으로 처리해서 보여주기
{
    // sendRequest 함수를 호출하며 파라미터로 호출할 페이지 명을 넘겨줌
    sendRequest('sampledb.php'); // 값을 받아올 php의 위치
    // 1초후에 자기 함수를 다시 호출 재귀함수
    setTimeout("repeatloop()", 1000); //refresh 빈도 1000 = 1초
}


// 브라우져가 실행될때 repeatloop 함수를 실행
window.onload=function()
{
    // repeatloop 함수 호출
    repeatloop();
}


</script>
    </head>
    <body>
        읽지 않은 새글이<span id="dbstatus"></span>개 있습니다.
    </body>
</html>
추천추천 : 292 추천 목록
번호 제목
3,025
 윈도우10 시스템파일 손상 (초간단 오류 복구방법!!)
3,024
 PHP 파일 존재 여부 파악하기(로컬 파일 존재 및 원격지 파일 존재)
3,023
 [CSS] 박스 세로 가운데 중앙 정렬 6가지
3,022
 CSS Layout 수평 & 수직 정렬
3,021
 여러 도메인들 간 쿠키 공유하기
3,020
 태그 사이에 있는 텍스트를 추출
3,019
 [JQuery] textbox focus on off일때 숫자 콤마 보여주기
3,018
 쿠키 생성,가져오기,삭제
3,017
 사용자 함수 모음
3,016
 마우스,키보드 제한 ( 오른쪽클릭,드래그,영역선택등..)
3,015
 [HTML5] <video> - DOM으로 제어하기
3,014
 HTML5 video 태그에서 영상 좌우반전
3,013
 PHP - 특정 태그 및 문자열 추출, 제거
3,012
 [PHP] define과 defined의 차이
3,011
 우클릭 완벽차단 스크립트
3,010
 iframe 높이 100% 맞추기
3,009
 curl 함수를 이용한 HTTP REFERER 변경
3,008
 윈도우10 시스템 파일 및 Dism 검사
3,007
 텍스트 줄바꿈, 글자자르기 CSS
3,006
 jQuery Mobile에서 유용한 코드 10가지.
3,005
 [PHP] dirname()함수와 $_SERVER 관련 상수들
3,004
 [PHP] 파일 크기, 사이즈 불러오는 함수, filesize()
3,003
 [jQuery] jQuery Quick API
3,002
 [ transition ] 링크 hover 색상 변화 속도 조절
3,001
 PHP 5.3.0 에서 사라진 함수들 대체
목록
뮤직트로트 부산광역시 부산진구 가야동 ㅣ 개인정보취급방침
Copyright (C) musictrot All rights reserved.