AJAX的完整格式是异步JavaScript和XML。它是一种减少服务器与客户端之间的交互的技术。它仅通过更新网页的一部分而不是整个页面来实现。异步交互是由JavaScript启动的。AJAX的目的是与服务器交换少量数据,而无需刷新页面。
JavaScript是一种客户端脚本语言。它由支持JavaScript的Web浏览器在客户端执行。JavaScript代码仅在启用JavaScript的浏览器中有效。
XML是可扩展标记语言的缩写。它用于以人类和机器可读格式对消息进行编码。就像HTML一样,但是允许您创建自定义标签。有关XML的更多详细信息,请参见有关XML的文章。
我们将创建一个简单的应用程序,允许用户搜索流行的PHP MVC框架。
我们的应用程序将具有一个文本框,用户可以在其中输入框架名称。
然后,我们将使用mvc AJAX搜索匹配项,然后在搜索表单下方显示框架的全名。
步骤1)建立索引页面
Index.php
<html>
<head>
<title>PHP MVC Frameworks - Search Engine</title>
<script type="text/javascript" src="/auto_complete.js"></script>
</head>
<body>
<h2>PHP MVC Frameworks - Search Engine</h2>
<p><b>Type the first letter of the PHP MVC Framework</b></p>
<form method="POST" action="index.php">
<p><input type="text" size="40" id="txtHint" onkeyup="showName(this.value)"></p>
</form>
<p>Matches: <span id="txtName"></span></p>
</body>
</html>
这里,
此功能称为自动完成
第2步:创建框架页面
frameworks.php
<?php
$frameworks = array("CodeIgniter","Zend Framework","Cake PHP","Kohana") ;
$name = $_GET["name"];
if (strlen($name) > 0) {
$match = "";
for ($i = 0; $i < count($frameworks); $i++) {
if (strtolower($name) == strtolower(substr($frameworks[$i], 0, strlen($name)))) {
if ($match == "") {
$match = $frameworks[$i];
} else {
$match = $match . " , " . $frameworks[$i];
}
}
}
}
echo ($match == "") ? 'no match found' : $match;
?>
步骤3)创建JS脚本
auto_complete.js
function showName(str){
if (str.length == 0){ //exit function if nothing has been typed in the textbox
document.getElementById("txtName").innerHTML=""; //clear previous results
return;
}
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else {// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200){
document.getElementById("txtName").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","frameworks.php?name="+str,true);
xmlhttp.send();
}
这里,
步骤4)测试我们的PHP Ajax应用程序
假设您已保存文件index.php在phututs / ajax中,浏览至URL http://localhost/phptuts/ajax/index.php
在文本框中键入字母C您将得到以下结果。
上面的示例演示了AJAX的概念以及它如何帮助我们创建丰富的交互应用程序。