Maison > développement back-end > Problème PHP > Continuer l'apprentissage - AJAX PHP (avec code source)

Continuer l'apprentissage - AJAX PHP (avec code source)

慕斯
Libérer: 2023-03-10 07:42:01
original
2288 Les gens l'ont consulté

L'article précédent vous a présenté "Qu'est-ce que PHP SimpleXML ? Si vous êtes fan de PHP, venez jeter un oeil ! 》, cet article continue de vous présenter ce qu'est AJAX PHP. Concernant AJAX et PHP, le connaissez-vous ? Après tout, il ne vous connaît pas encore ! Si vous voulez être amis, venez le découvrir

Continuer l'apprentissage - AJAX PHP (avec code source)

PHP - AJAX et PHP AJAX est utilisé pour créer des applications plus interactives.

Pour AJAX PHP, notre opération spécifique est affichée dans le code, comme indiqué ci-dessous :

<html>
<head>
<script>
function showHint(str){    
if (str.length==0)    
{        
document.getElementById("txtHint").innerHTML="";        
return;    
}    
if (window.XMLHttpRequest)    
{        
// IE7+, Firefox, Chrome, Opera, Safari 浏览器执行的代码        
xmlhttp=new XMLHttpRequest();    
}    
else    
{    
//IE6, IE5 浏览器执行的代码        
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");    
}    
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>在输入框中输入一个姓名:</b></p>
<form>姓名: <input type="text" onkeyup="showHint(this.value)"></form>
<p>返回值: <span id="txtHint"></span></p>
</body>
</html>
Copier après la connexion

Le résultat de l'exécution du code est le suivant :

Continuer lapprentissage - AJAX PHP (avec code source)

Explication du code source :

  • Si la zone de saisie est vide (str.length==0), cette fonction effacera le contenu de l'espace réservé txtHint et quittez la fonction.

  • Si la zone de saisie n'est pas vide, alors showHint() effectuera les étapes suivantes :

  • Créer un objet XMLHttpRequest

  • Créer une fonction qui s'exécute lorsque la réponse du serveur est prête

  • Envoyer une requête à un fichier sur le serveur

Attention à ajouter dans l'URL Le paramètre (q) à la fin (y compris le contenu de la zone de saisie)

Fichier PHP

La page du serveur appelée ci-dessus via JavaScript est nommé fichier PHP "gethint.php".

Le code source dans "gethint.php" vérifie le tableau de noms et renvoie le nom correspondant au navigateur :

<?php
// 将姓名填充到数组中
$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";
//从请求URL地址中获取 q 参数
$q=$_GET["q"];
//查找是否由匹配值, 如果 q>0
if (strlen($q) > 0)
{
    $hint="";
    for($i=0; $i<count($a); $i++)
    {
        if (strtolower($q)==strtolower(substr($a[$i],0,strlen($q))))
        {
            if ($hint=="")
            {
                $hint=$a[$i];
            }
            else
            {
                $hint=$hint." , ".$a[$i];
            }
        }
    }
}
// 如果没有匹配值设置输出为 "no suggestion" 
if ($hint == "")
{
    $response="no suggestion";
}
else
{
    $response=$hint;
}
//输出返回值
echo $response;
?>
Copier après la connexion

Explication :

Si JavaScript envoie n'importe quel texte (c'est-à-dire strlen($q) > 0), cela se produira :

Trouver les noms correspondant aux caractères envoyés par JavaScript

Si aucune correspondance n'est trouvée, cela répondra String défini sur "aucune suggestion"

Si un ou plusieurs noms correspondants sont trouvés, définissez la chaîne de réponse avec tous les noms

Envoyer la réponse à l'espace réservé "txtHint"

Apprentissage recommandé : " Tutoriel vidéo PHP"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal