최신 웹 개발 튜토리얼
 

AJAX데이터베이스 예


AJAX 데이터베이스와 쌍방향 통신을 위해 사용될 수있다.


AJAX 데이터베이스 예

다음은 웹 페이지가 AJAX와 데이터베이스에서 정보를 가져올 수있는 방법을 설명 할 것이다 :


Customer info will be listed here...

»그것을 자신을 시도


예 설명 - showCustomer() 함수

사용자가 위의 드롭 다운 목록에서 고객,라는 함수를 선택하면 "showCustomer()" 실행됩니다. 함수는에 의해 트리거 "onchange" 이벤트 :

showCustomer

function showCustomer(str) {
  var xhttp;
  if (str == "") {
    document.getElementById("txtHint").innerHTML = "";
    return;
  }
  xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
    if (xhttp.readyState == 4 && xhttp.status == 200) {
    document.getElementById("txtHint").innerHTML = xhttp.responseText;
    }
  };
  xhttp.open("GET", "getcustomer.asp?q="+str, true);
  xhttp.send();
}

showCustomer() 함수는 다음을 수행합니다

  • 고객이 선택되어 있는지 확인
  • 작성 XMLHttpRequest 객체를
  • 서버 응답이 준비 될 때 실행되는 함수를 만들기
  • 서버에있는 파일에 대한 요청을 보낼
  • 매개 변수납니다 (q) (드롭 다운 목록의 내용과 함께)를 URL에 추가

AJAX 서버 페이지

위의 자바 스크립트에 의해 호출 된 서버의 페이지라는 ASP 파일입니다 "getcustomer.asp" .

서버 파일은 쉽게 PHP, 또는 다른 서버의 언어로 다시 작성할 수 있습니다.

PHP에 상응하는 예를 봐 .

의 소스 코드 "getcustomer.asp" 데이터베이스에 대해 쿼리를 실행하고 HTML 테이블에 결과를 반환합니다 :

<%
response.expires=-1
sql="SELECT * FROM CUSTOMERS WHERE CUSTOMERID="
sql=sql & "'" & request.querystring("q") & "'"

set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open(Server.Mappath("/ datafolder /northwind.mdb"))
set rs=Server.CreateObject("ADODB.recordset")
rs.Open sql,conn

response.write("<table>")
do until rs.EOF
  for each x in rs.Fields
    response.write("<tr><td><b>" & x.name & "</b></td>")
    response.write("<td>" & x.value & "</td></tr>")
  next
  rs.MoveNext
loop
response.write("</table>")
%>