يمكن استخدام AJAX للتواصل ديناميكيًا مع قاعدة البيانات.
سيوضح المثال التالي كيف تقرأ صفحة الويب المعلومات من قاعدة البيانات عبر AJAX: يرجى تحديد عميل من القائمة المنسدلة أدناه:
عندما يقوم المستخدم بتحديد عميل في القائمة المنسدلة أعلاه، يتم تنفيذ وظيفة تسمى "showCustomer()". يتم تشغيل هذه الوظيفة بواسطة حدث "onchange":
وظيفة عرض العميل ( شارع ) { فار xmlhttp ; إذا ( شارع == " " ) { مستند getElementById ( " txtHint " ) ; لو ( نافذة .XMLHttpRequest ) { // رمز تنفيذ متصفح IE7+ وFirefox وChrome وOpera وSafari xmlhttp = جديد XMLHttpRequest ( ) ; آخر { // رمز تنفيذ متصفح IE6 وIE5 xmlhttp = جديد ActiveXObject ( " Microsoft.XMLHTTP " ) ; xmlhttp.onreadystatechange = الدالة ( ) { لو ( xmlhttp . ReadyState == 4 && xmlhttp . الحالة == 200 ) { مستند getElementById ( " txtHint " ) . innerHTML = xmlhttp ; } xmlhttp مفتوح ( " GET , " /try/ajax/getcustomer.php?q= " + str , صحيح ) ; xmlhttp ;تقوم الدالة showCustomer() بالمهام التالية:
تحقق مما إذا تم اختيار العميل
إنشاء كائن XMLHttpRequest
قم بتنفيذ الوظيفة التي تم إنشاؤها عندما تكون استجابة الخادم جاهزة
إرسال الطلب إلى ملف على الخادم
لاحظ أننا أضفنا المعلمة q إلى عنوان URL (مع محتويات حقل الإدخال)
صفحة الخادم التي تم استدعاؤها بواسطة JavaScript أعلاه هي ملف PHP يسمى "getcustomer.php".
من السهل أيضًا كتابة ملفات الخادم بلغة PHP أو لغات الخادم الأخرى. انظر المثال المقابل المكتوب بلغة PHP.
الكود المصدري في "getcustomer.php" مسؤول عن الاستعلام عن قاعدة البيانات وإرجاع النتائج في جدول HTML:
<%response.expires=-1sql="SELECT * من العملاء حيث CUSTOMERID="sql=sql & "'" & request.querystring("q") & "'"مجموعة 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>")قم بذلك حتى rs.EOF لكل x في rs.Fields Response.write("<tr><td><b>" & x.name & "</b></td>") Response.write("<td>" & x. القيمة & "</td></tr>") التالي rs.MoveNextloopresponse.write("</table>")%>