tutorial pengembangan web terbaru
 

AJAX database Contoh


AJAX dapat digunakan untuk komunikasi interaktif dengan database.


AJAX database Contoh

Contoh berikut akan menunjukkan bagaimana sebuah halaman web dapat mengambil informasi dari database dengan AJAX:

Contoh


Customer info will be listed here...

Cobalah sendiri "


Contoh Dijelaskan - The HTML Halaman

Bila pengguna memilih pelanggan dalam daftar dropdown di atas, fungsi yang disebut " showCustomer() " dijalankan. Fungsi ini dipicu oleh "onchange" acara:

<!DOCTYPE html>
<html>
<head>
<script>
function showCustomer(str)
{
if (str=="")
  {
  document.getElementById("txtHint").innerHTML="";
  return;
  }
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)
    {
    document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","getcustomer.asp?q="+str,true);
xmlhttp.send();
}
</script>
</head
<body>

<form>
<select name="customers" onchange="showCustomer(this.value)">
<option value="">Select a customer:</option>
<option value="ALFKI">Alfreds Futterkiste</option>
<option value="NORTS ">North/South</option>
<option value="WOLZA">Wolski Zajazd</option>
</select>
</form>
<br>
<div id="txtHint">Customer info will be listed here...</div>

</body>
</html>

Penjelasan kode:

Jika tidak ada pelanggan yang dipilih (str.length==0) , fungsi membersihkan isi dari placeholder txtHint dan keluar fungsi.

Jika pelanggan dipilih, showCustomer() fungsi mengeksekusi berikut:

  • Membuat objek XMLHttpRequest
  • Buat fungsi yang akan dijalankan ketika respon server siap
  • Kirim permintaan off ke file di server
  • Perhatikan bahwa parameter (q) ditambahkan ke URL (dengan isi dari daftar dropdown)

ASP Berkas

Halaman pada server yang disebut oleh JavaScript di atas adalah file ASP disebut "getcustomer.asp" .

Kode sumber di "getcustomer.asp" menjalankan query terhadap database, dan mengembalikan hasilnya dalam sebuah tabel 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>")
%>