AJAX ma’lumotlar bazasi


AJAX’dan ma’lumotlar bazasi bilan interaktiv aloqa qilish uchun foydalanish mumkin.


ULASHISH

AJAX ma’lumotlar bazasi misoli

Quyidagi misol veb-sahifa AJAX yordamida ma’lumotlar bazasidan qanday qilib ma’lumot olishi mumkinligini ko‘rsatadi:

Misol


Customer info will be listed here...

O‘zingiz sinab ko‘ring »


Misol tushuntirilishi - showCustomer() funksiyasi

Foydalanuvchi yuqoridagi ochiladigan ro‘yxatdan mijozni tanlaganda "showCustomer()" nomli funksiya bajariladi. Funksiya "onchange" hodisasi orqali ishga tushadi:

showCustomer

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

showCustomer() funksiyasi quyidagilarni bajaradi:

  • Mijoz tanlanganligini tekshirish
  • XMLHttpRequest obyektini yaratish
  • Server javobi tayyor bo‘lganda bajariladigan funksiyani yaratish
  • So‘rovni serverdagi faylga yuborish
  • E’tibor bering, URL’ga (ochiladigan ro‘yxat qiymati bilan) parametr (q) qo‘shiladi


AJAX server sahifasi

Yuqoridagi JavaScript chaqiradigan serverdagi sahifa "getcustomer.php" nomli PHP fayldir.

"getcustomer.php" faylidagi manba kodi ma’lumotlar bazasiga so‘rov yuboradi va natijani HTML jadvalda qaytaradi:

<?php $mysqli = new mysqli("servername", "username", "password", "dbname"); if($mysqli->connect_error) {   exit('Could not connect'); } $sql = "SELECT customerid, companyname, 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, $cname, $name, $adr, $city, $pcode, $country); $stmt->fetch(); $stmt->close(); echo "<table>"; echo "<tr>"; echo "<th>CustomerID</th>"; echo "<td>" . $cid . "</td>"; echo "<th>CompanyName</th>"; echo "<td>" . $cname . "</td>"; echo "<th>ContactName</th>"; echo "<td>" . $name . "</td>"; echo "<th>Address</th>"; echo "<td>" . $adr . "</td>"; echo "<th>City</th>"; echo "<td>" . $city . "</td>"; echo "<th>PostalCode</th>"; echo "<td>" . $pcode . "</td>"; echo "<th>Country</th>"; echo "<td>" . $country . "</td>"; echo "</tr>"; echo "</table>"; ?>

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!