باAJAX ميتوان براي تعامل ارتباطي با پايگاده داده استفاده كرد .
مثال زير نشان ميدهد كه چگونه يك صفحه وب ميتواند اطلاعات را از پايگاده داده باAJAX واكشي كند:
مثال ـ نمونه دريافت داده ازپايگاه اطلاعاتي باAJAX
تشــريح مثال تابعshowCustomer( )
هنگاميكه كاربر مشتري را ازليست كشوئي بالا انتخاب ميكند، تابعshowCustomer( ) اجرا ميگردد .اين تابع توسط رويدادonchange فعال ميشود :
كد تابعshowCustomer() مطابق زيراست :
function showCustomer(str) { if (str == "") { document.getElementById("txtHint").innerHTML = ""; return; } const xhttp = new XMLHttpRequest(); xhttp.onload = function() { document.getElementById("txtHint").innerHTML = this.responseText; } xhttp.open("GET", "getcustomer.php?q="+str); xhttp.send(); }
تابعshowCustomer( ) كارهاي زيرا انجام ميدهد :
صفحه ايكه روي سرور بوسيله جاوااسكريپت فراخوان ميشود، ازطريق فايل "getCutomer.php"ميباشد .
كدهاي فايلgetCustomer.php يك پرس وجو (query) را روي پايگاه داده اجرا كرده ونتيجه آنرا در يك جدولHTML برميگرداند .
<?php $mysqli = new mysqli("servername", "username", "password", "dbname"); if($mysqli->connect_error) { exit('Could not connect'); } $sql = "SELECT customerid, contactname, address, city, postalcode, country FROM customers WHERE customerid = ?"; $stmt = $mysqli->prepare($sql); $stmt->bind_param("s", $_GET["q"]); $stmt->execute(); $stmt->store_result(); $stmt->bind_result($cid, $name, $adr, $city, $pcode, $country); $stmt->fetch(); $stmt->close(); echo "<table>"; echo "<tr>"; echo "<th>CustomerID</th>"; echo "<td>" . $cid . "</td>"; echo "<tr>"; echo "<th>ContactName</th>"; echo "<td>" . $name . "</td>"; echo "<tr>"; echo "<th>Address</th>"; echo "<td>" . $adr . "</td>"; echo "<tr>"; echo "<th>City</th>"; echo "<td>" . $city . "</td>"; echo "<tr>"; echo "<th>PostalCode</th>"; echo "<td>" . $pcode . "</td>"; echo "<tr>"; echo "<th>Country</th>"; echo "<td>" . $country . "</td>"; echo "</tr>"; echo "</table>"; ?>