AJAX を使用してデータベースと動的に通信できます。
次の例は、Web ページが AJAX 経由でデータベースから情報を読み取る方法を示しています。 以下のドロップダウン リストで顧客を選択してください。
ユーザーが上のドロップダウン リストで顧客を選択すると、「showCustomer()」という名前の関数が実行されます。この関数は、「onchange」イベントによってトリガーされます。
関数showCustomer ( str ) { 変数xmlhttpの場合( str == " " ) { ドキュメント.getElementById ( " txtHint " ) ; もし(ウィンドウ.XMLHttpRequest ) { // IE7+、Firefox、Chrome、Opera、Safari ブラウザの実行コード xmlhttp =新しいXMLHttpRequest ( ) ; それ以外 { // IE6、IE5 ブラウザの実行コード xmlhttp =新しいActiveXObject ( " Microsoft.XMLHTTP " ) ; xmlhttp.onreadystatechange = function ( ) { もし( xmlhttp .readyState == 4 && xmlhttp .status == 200 ) { ドキュメント.getElementById ( " txtHint " ) 。 } xmlhttp .open ( " GET " , " / try / ajax / getcustomer.php ? q = " + str , true ) ;showCustomer() 関数は次のタスクを実行します。
顧客が選択されているかどうかを確認する
XMLHttpRequest オブジェクトを作成する
サーバー応答の準備ができたら、作成した関数を実行します
リクエストをサーバー上のファイルに送信します
URL にパラメーター q を (入力フィールドの内容とともに) 追加したことに注意してください。
上記JavaScriptで呼び出されるサーバーページは「getcustomer.php」というPHPファイルです。
PHP やその他のサーバー言語でサーバー ファイルを作成することも簡単です。 PHP で書かれた対応する例を参照してください。
「getcustomer.php」のソース コードは、データベースにクエリを実行し、結果を HTML テーブルで返す役割を果たします。
<%response.expires=-1sql="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("/db/northwind.mdb"))set rs=Server.CreateObject( "ADODB.recordset")rs.Open sql,connresponse.write("<table>")do until rs.EOF rs.Fields の各 x について、response.write("<tr><td><b>" & x.name & "</b></td>") response.write("<td>" & x。値 & "</td></tr>") next rs.MoveNextloopresponse.write("</table>")%>