php的ajax简单实例


Posted in PHP onFebruary 27, 2014

php的ajax简单实例

当输入j后,会触发ajax效果,从后台获取相应的名字中带有j的数据,并展示在suggestions中。

代码实现如下:

实现ajax需要三个文件,一个是html的表单文件,一个是js的核心文件,一个是php的后台文件。

下面的是html文件,当键盘按下时触发showHint方法,在showHint方法中会有ajax的核心内容,实例化,获取地址,获取数据并展示等等。

<html>
<head>
<script src="clienthint.js"></script> 
</head>
<body>
<form> 
First Name:
<input type="text" id="txt1"
onkeyup="showHint(this.value)">
</form>
<p>Suggestions: <span id="txtHint"></span></p>
</body>
</html>

 

下面是js的内容clienthint.js。

var xmlHttp
function showHint(str)
{
if (str.length==0)
 { 
 document.getElementById("txtHint").innerHTML=""
 return
 }
//获取xmlHttpObject对象,如果为空,提示浏览器不支持ajax
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
 {
 alert ("Browser does not support HTTP Request")
 return
 } 
 //获取url
var url="gethint.php"
url=url+"?q="+str
url=url+"&sid="+Math.random()
 //回调函数,执行动作
xmlHttp.onreadystatechange=stateChanged 
 //open
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
} 
function stateChanged() 
{ 
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
{ 
//将获取的信息插入到txtHint中
document.getElementById("txtHint").innerHTML=xmlHttp.responseText 
} 
}

//获取xml对象
function GetXmlHttpObject()
{
var xmlHttp=null;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer
try
 {
 xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
 }
catch (e)
 {
 xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
 }
}
return xmlHttp;
}

下面是php的内容。根据ajax对象传入的参数,获取相应的数据。

<?php
// Fill up array with names
$a[]="Anna";
$a[]="Brittany";
$a[]="Cinderella";
$a[]="Diana";
$a[]="Eva";
$a[]="Fiona";
$a[]="Gunda";
$a[]="Hege";
$a[]="Inga";
$a[]="Johanna";
$a[]="Jiqing";
$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=$_GET["q"];
//lookup all hints from array if length of 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];
     }
   }
 }
}
//Set output to "no suggestion" if no hint were found
//or to the correct values
if ($hint == "")
{
$response="no suggestion";
}
else
{
$response=$hint;
}
//output the response
echo $response;
?>
PHP 相关文章推荐
PHP4在Windows2000下的安装
Oct 09 PHP
深入解析php模板技术原理【一】
Jan 10 PHP
php框架Phpbean说明
Jan 10 PHP
PHP 设置MySQL连接字符集的方法
Jan 02 PHP
PHP Undefined index报错的修复方法
Jul 17 PHP
PHP循环函数使用介绍之PHP基础入门教程
Sep 21 PHP
为PHP5.4开启Zend OPCode缓存
Dec 26 PHP
PHP从FLV文件获取视频预览图的方法
Mar 12 PHP
FleaPHP框架数据库查询条件($conditions)写法总结
Mar 19 PHP
php+redis实现多台服务器内网存储session并读取示例
Jan 12 PHP
解决laravel groupBy 对查询结果进行分组出现的问题
Oct 09 PHP
PHP上传图片到数据库并显示的实例代码
Dec 20 PHP
php中require和require_once的区别说明
Feb 27 #PHP
php更新修改excel中的内容实例代码
Feb 26 #PHP
php获取文件大小的方法
Feb 26 #PHP
PHP批量上传图片的具体实现方法介绍.
Feb 26 #PHP
php把session写入数据库示例
Feb 26 #PHP
php操作mysql数据库的基本类代码
Feb 25 #PHP
php获取bing每日壁纸示例分享
Feb 25 #PHP
You might like
PHP Document 代码注释规范
2009/04/13 PHP
PHP 配置open_basedir 让各虚拟站点独立运行
2009/11/12 PHP
ExtJS与PHP、MySQL实现存储的方法
2010/04/02 PHP
PHP foreach循环使用详解与实例代码
2010/05/08 PHP
Memcached常用命令以及使用说明详解
2013/06/27 PHP
php缓存技术详细总结
2013/08/07 PHP
利用PHP判断是否是连乘数字串的方法示例
2017/07/03 PHP
JavaScript 基础篇之对象、数组使用介绍(三)
2012/04/07 Javascript
Javascript浅谈之this
2013/12/17 Javascript
jquery validate demo 基础
2015/10/29 Javascript
jquery取消事件冒泡的三种方法(推荐)
2016/05/28 Javascript
微信小程序商城项目之购物数量加减(3)
2017/04/17 Javascript
jquery 一键复制到剪切板的实例
2017/09/20 jQuery
JS实现的数组去除重复数据算法小结
2017/11/17 Javascript
jQuery选择器之基本过滤选择器用法实例分析
2019/02/19 jQuery
微信小程序实现左滑动删除效果
2020/03/30 Javascript
[03:14]DOTA2斧王 英雄基础教程
2013/11/26 DOTA
python 实现文件的递归拷贝实现代码
2012/08/02 Python
开源软件包和环境管理系统Anaconda的安装使用
2017/09/04 Python
彻底搞懂Python字符编码
2018/01/23 Python
Python 通配符删除文件的实例
2018/04/24 Python
Python将一个Excel拆分为多个Excel
2018/11/07 Python
pytorch使用Variable实现线性回归
2019/05/21 Python
python制作朋友圈九宫格图片
2019/11/03 Python
Python实现图像的垂直投影示例
2020/01/17 Python
Python 列表反转显示的四种方法
2020/11/16 Python
HTML5制作酷炫音频播放器插件图文教程
2014/12/30 HTML / CSS
个人简历自我评价范文
2014/02/04 职场文书
服务承诺书格式
2014/05/21 职场文书
大学生考试作弊检讨书
2014/09/21 职场文书
公司授权委托书格式范文
2014/10/02 职场文书
2014幼儿园教师个人工作总结
2014/11/08 职场文书
财务经理岗位职责
2015/01/31 职场文书
团委副书记工作总结
2015/08/14 职场文书
运动会200米广播稿
2015/08/19 职场文书
教你使用Ubuntu搭建DNS服务器
2022/09/23 Servers