AJAX PHP 实例

AJAX 用于创建更具交互性的应用程序。

AJAX PHP 实例

Mivumbuzo hii inadhumisha kama inafikia hali ya kichwa cha mawasiliano, kama mtumiaji anasajili herufi, hivi inafanyishwa kwa kina kwa kifungu cha web server:

Mfano

Tafuta herufi A-Z kwenye eneo la kila muda hapa:

Jina:

Mauzizi wa tafuta:

Muhtasari wa mivumbuzo

Kwenye mivumbuzo hii, kama inafikia hali ya kichwa cha mawasiliano, kama mtumiaji anasajili herufi, inafanyishwa kwa kina "showHint()".

Tofauti hii inasababisha kila muda kama inafikia hali ya kichwa cha mawasiliano.

Hapa ni kipimo cha HTML:

Mfano

<html>
<head>
<script>
function showHint(str) {
    if (str.length == 0) { 
        document.getElementById("txtHint").innerHTML = "";
        return;
    }
        var xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = function() {
            if (this.readyState == 4 && this.status == 200) {
                document.getElementById("txtHint").innerHTML = this.responseText;
            }
        };
        xmlhttp.open("GET", "gethint.php?q=" + str, true);
        xmlhttp.send();
    }
}
</script>
</head>
<body>
<p><b>Wachukue jina kwenye eneo hili:</b></p>
<form> 
Jina la kwanza au jina la mume:<input type="text" onkeyup="showHint(this.value)">
</form>
<p>Mahitaji:<span id="txtHint"></span></p>
</body>
</html>

Mfano wa kufikia kwa kumtumia

Muonezekano wa kipenzi:

Kwanza, tukichukua eneo la kufikia lingana na eneo lingine (str.length == 0),kama ni, ingee kusaidia kufikia txtHint na kusora maelezo ya kwanza.

Hata hivyo, kama eneo la kufikia lingana na eneo lingine, inafanyia kama inayofikia hapa:

  • Kumengeneza kipengele XMLHttpRequest
  • Kumengeneza muhimu wa kufanya kama mawasiliano ya kina yanaanza kumaliza:
  • Inafikia kwa mawasiliano kwa mawasiliano ya PHP kwenye mawasiliano wa kina (gethint.php)
  • Kujaongezesha thamani ya q kwa gethint.php
  • Mfano wa str inahifadhi maadili ya eneo la kufikia

Fayio PHP - "gethint.php"

Fayio PHP likichia jina lajaloa, kisha ina kumuza jina kipya kwa kibao cha kina:

<?php
// Jina lajaloa
 $a[] = "Ava";
 $a[] = "Brielle";
 $a[] = "Caroline";
 $a[] = "Diana";
 $a[] = "Elise";
 $a[] = "Fiona";
 $a[] = "Grace";
 $a[] = "Hannah";
 $a[] = "Ileana";
 $a[] = "Jane";
 $a[] = "Kathryn";
 $a[] = "Laura";
 $a[] = "Millie";
 $a[] = "Nancy";
 $a[] = "Opal";
 $a[] = "Petty";
 $a[] = "Queenie";
 $a[] = "Rose";
 $a[] = "Shirley";
 $a[] = "Tiffany";
 $a[] = "Ursula";
 $a[] = "Victoria";
 $a[] = "Wendy";
 $a[] = "Xenia";
 $a[] = "Yvette";
 $a[] = "Zoe";
 $a[] = "Angell";
 $a[] = "Adele";
 $a[] = "Beatty";
 $a[] = "Carlton";
 $a[] = "Elisabeth";
 $a[] = "Violet";
// kupata thamani ya q kutoka URL
$q = $_REQUEST["q"];
$hint = "";
// kuangalia barua za hint, $q inaonekana kuwa ""
if ($q !== "") {
    $q = strtolower($q);
    $len=strlen($q);
    foreach($a as $name) {
        if (stristr($q, substr($name, 0, $len))) {
            if ($hint === "") {
                $hint = $name;
            }
                $hint .= ", $name";
            }
         }
    }
}
// kuwakilisha "no suggestion", kama hint haijafikia au kuwakilisha thamani sahihi
  echo $hint === "" ? "no suggestion" : $hint;
?>
c.html" -->