tutorial pengembangan web terbaru
 

AJAX PHP Contoh


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;
?>