PHP AJAX ma’lumotlar bazasi
AJAX va MySQL
AJAX ma’lumotlar bazasi bilan interaktiv aloqa uchun ishlatilishi mumkin.
Quyidagi misol veb-sahifa AJAX yordamida ma’lumotlar bazasidan ma’lumotlarni qanday olishi mumkinligini ko‘rsatadi:
Misol
MySQL ma’lumotlar bazasi jadvali
Yuqoridagi misolda biz foydalanadigan ma’lumotlar bazasi jadvali quyidagicha ko‘rinadi:
| id | FirstName | LastName | Age | Hometown | Job |
|---|---|---|---|---|---|
| 1 | Peter | Griffin | 41 | Quahog | Brewery |
| 2 | Lois | Griffin | 40 | Newport | Piano Teacher |
| 3 | Joseph | Swanson | 39 | Quahog | Police Officer |
| 4 | Glenn | Quagmire | 41 | Quahog | Pilot |
HTML fayli
Agar foydalanuvchi yuqoridagi ochiladigan ro‘yxatda shaxsni tanlasa, showUser() funksiyasi bajariladi. Funksiya onchange hodisasi tomonidan ishga tushiriladi.
Mana HTML kodi:
Misol
<html>
<head>
<script>
function showUser(str) {
if (str == "") {
document.getElementById("txtHint").innerHTML = "";
return;
} else {
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("txtHint").innerHTML = this.responseText;
}
};
xmlhttp.open("GET","family.php?q="+str,true);
xmlhttp.send();
}
}
</script>
</head>
<body>
<form>
<select name="users" onchange="showUser(this.value)">
<option value="">Select a person:</option>
<option value="1">Peter Griffin</option>
<option value="2">Lois Griffin</option>
<option value="3">Joseph Swanson</option>
<option value="4">Glenn Quagmire</option>
</select>
</form>
<br>
<div id="txtHint"><b>Person info will be listed here...</b></div>
</body>
</html>
Misolni ishga tushirish »
Kod tushuntirish
Birinchidan, odam tanlanganligini tekshiring. Hech kim tanlanmagan bo‘lsa (str == ""), txtHint tarkibini tozalang va funksiyadan chiqing. Agar biror kishi tanlangan bo‘lsa, quyidagilarni bajaring:
XMLHttpRequestobyektini yarating- Server javobi tayyor bo‘lganda bajariladigan funksiyani yarating
- So‘rovni serverdagi faylga yuboring
- URL manziliga
qparametr qo‘shilganiga e’tibor bering (ochiladigan ro‘yxat mazmuni bilan)
PHP fayli
Yuqoridagi JavaScript tomonidan chaqirilgan serverdagi sahifa family.php deb nomlangan PHP faylidir.
family.php dagi manba kodi MySQL ma’lumotlar bazasiga qarshi so‘rovni bajaradi va natijani HTML formatida qaytaradi
jadval:
$q = intval($_GET['q']);
$con = mysqli_connect('localhost','peter','abc123');
if (!$con) {
die('Could not connect: ' . mysqli_error($con));
}
mysqli_select_db($con,"ajax_demo");
$sql="SELECT * FROM user WHERE id = '".$q."'";
$result = mysqli_query($con,$sql);
echo "<table>
<tr>
<th>Firstname</th>
<th>Lastname</th>
<th>Age</th>
<th>Hometown</th>
<th>Job</th>
</tr>";
while($row = mysqli_fetch_array($result)) {
echo "<tr>";
echo "<td>" . $row['FirstName'] . "</td>";
echo "<td>" . $row['LastName'] . "</td>";
echo "<td>" . $row['Age'] . "</td>";
echo "<td>" . $row['Hometown'] . "</td>";
echo "<td>" . $row['Job'] . "</td>";
echo "</tr>";
}
echo "</table>";
mysqli_close($con);
Kod tushuntirish
So‘rov JavaScript-dan PHP fayliga yuborilganda, quyidagilar sodir bo‘ladi:
- PHP MySQL serveriga ulanishni ochadi
- To‘g‘ri odam topildi
- HTML jadvali yaratiladi, ma’lumotlar bilan to‘ldiriladi va
txtHintto‘ldiruvchisiga qaytariladi
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
