AJAX digunakan untuk membuat aplikasi yang lebih interaktif.
AJAX PHP Contoh
Contoh berikut akan menunjukkan bagaimana sebuah halaman web dapat berkomunikasi dengan server web sementara tipe user karakter dalam sebuah field input:
Contoh
Start typing a name in the input field below:
First name:Suggestions:
misalnya Dijelaskan
Dalam contoh di atas, ketika seorang pengguna jenis karakter di bidang input, fungsi yang disebut "showHint()" dijalankan.
Fungsi ini dipicu oleh onkeyup event.
Berikut adalah kode HTML:
Contoh
<html>
<head>
<script>
function showHint(str) {
if (str.length == 0) {
document.getElementById("txtHint").innerHTML = "";
return;
} else {
var xmlhttp = new
XMLHttpRequest();
xmlhttp.onreadystatechange = function()
{
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("txtHint").innerHTML = xmlhttp.responseText;
}
};
xmlhttp.open("GET", "gethint.php?q=" + str, true);
xmlhttp.send();
}
}
</script>
</head>
<body>
<p><b>Start typing a name in the
input field below:</b></p>
<form>
First name: <input type="text"
onkeyup="showHint(this.value)">
</form>
<p>Suggestions: <span id="txtHint"></span></p>
</body>
</html>
Cobalah sendiri " Kode penjelasan:
Pertama, periksa apakah kolom input kosong (str.length == 0) . Jika ya, menghapus isi dari txtHint placeholder dan keluar fungsi.
Namun, jika field input tidak kosong, lakukan hal berikut:
- Buat XMLHttpRequest objek
- Membuat fungsi yang akan dijalankan ketika respon server siap
- Kirim permintaan ke sebuah file PHP (gethint.php) pada server
- Perhatikan bahwa q parameter ditambahkan gethint.php?q="+str
- The str variabel memegang isi dari field input
PHP File - "gethint.php"
File PHP memeriksa array nama, dan mengembalikan sesuai name(s) ke browser:
<?php
// Array with names
$a[] = "Anna";
$a[] = "Brittany";
$a[] = "Cinderella";
$a[] = "Diana";
$a[] = "Eva";
$a[] = "Fiona";
$a[] = "Gunda";
$a[] = "Hege";
$a[] = "Inga";
$a[] = "Johanna";
$a[] = "Kitty";
$a[] = "Linda";
$a[] = "Nina";
$a[] = "Ophelia";
$a[] = "Petunia";
$a[] = "Amanda";
$a[] = "Raquel";
$a[] = "Cindy";
$a[] = "Doris";
$a[] = "Eve";
$a[] = "Evita";
$a[] = "Sunniva";
$a[] = "Tove";
$a[] = "Unni";
$a[] = "Violet";
$a[] = "Liza";
$a[] = "Elizabeth";
$a[] = "Ellen";
$a[] = "Wenche";
$a[] = "Vicky";
// get the q parameter from URL
$q = $_REQUEST["q"];
$hint = "";
//
lookup all hints from array if $q is different from ""
if ($q !== "")
{
$q = strtolower($q);
$len=strlen($q);
foreach($a as
$name) {
if (stristr($q, substr($name, 0, $len)))
{
if ($hint === "") {
$hint = $name;
} else
{
$hint .= ", $name";
}
}
}
}
// Output "no suggestion" if no hint was found
or output correct values
echo $hint === "" ? "no suggestion" : $hint;
?>