PHP Introductio...LOGIN

PHP Introduction à AJAX et PHP pour débutants

1. AJAX est utilisé pour créer des applications plus interactives

2.ajax php Exemples

L'exemple suivant montrera quand l'utilisateur entre dans la zone de saisie Comment fonctionne la page Web communique avec le serveur Web lorsque des caractères sont saisis

<!DOCTYPE html>
<html>
<meta charset="utf-8">
<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>

Si la zone de saisie est vide (str.length==0), cette fonction effacera le contenu de l'espace réservé txtHint et quittera 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 à exécuter lorsque le serveur répond est prêt

Envoyer une requête au fichier sur le serveur

Veuillez noter le paramètre (q) ajouté à la fin de l'URL (contient le contenu de la zone de saisie)

Fichier PHP

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

Le code source de "gethint.php" vérifiera le tableau de noms, puis renverra le nom correspondant au navigateur :

le code source de gethint.php est le suivant :

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

explication : Si JavaScript envoie un 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 trouvé, cela répondra. Chaîne définie 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"


section suivante
<?php echo "欢迎学习ajax"; ?>
soumettreRéinitialiser le code
chapitredidacticiel