En son web geliştirme öğreticiler
 

PHP - AJAX ve PHP


AJAX daha etkileşimli uygulamalar oluşturmak için kullanılır.


AJAX PHP Örnek

Aşağıdaki örnek, bir web sayfası bir giriş alanına bir kullanıcı tipi karakterleri ise bir web sunucusu ile iletişim nasıl gösterecektir:

Örnek

Start typing a name in the input field below:

First name:

Suggestions:


Örnek Açıklaması

Bir kullanıcı giriş alanında bir karakter, adı verilen bir fonksiyon Yukarıdaki örnekte, " showHint() " yürütülür.

fonksiyon onkeyup olayı ile tetiklenir.

İşte HTML kodu aşağıdadır:

Örnek

<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>
»Run örnek

Kod Açıklaması:

Giriş alanı boş olmadığını kontrol edin (str.length == 0) . Eğer öyleyse, txtHint yer tutucu içeriğini temizlemek ve işlevini çıkın.

Giriş alanı boş değilse Ancak, aşağıdakileri yapın:

  • XMLHttpRequest nesnesi oluştur
  • sunucu yanıtı hazır olduğunda yürütülecek işlevi oluşturma
  • Bir PHP dosyasına istek dışı Gönder (gethint.php) sunucuda
  • q parametresi gethint.php eklenir fark ettiniz? q = "+ str
  • str değişkeni giriş alanının içeriğini tutan

PHP Dosya - "gethint.php"

PHP dosya isimlerinin bir dizi kontrol eder, ve karşılık gelen döner name(s) tarayıcıya:

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