您的位置:首页 > 编程语言 > PHP开发

php+ajax简单实例代码

2015-01-10 14:25 477 查看
本文为大家讲解的是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;

?>

原文地址:http://www.adminso.com/articles/view/92220

(站长搜索- http://www.adminso.com/websites -网站收录,为站长提供分类最全,最专业的网站收录平台!)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息