我想用ajax 在mysql里查询数据,然后用数组把数据返回,求ajax 的代码

我想用ajax 在mysql里查询数据,然后用数组把数据返回,求ajax 的代码,第1张

服务器端:

$result    =array()

while($rows=mysql_fetch_row($res)){

    $result[]    =$rows

}

echo json_encode($result)

客户端:

<script language="javascript" src="jquery.js"></script>

<script language="javascript">

$.ajax({

    type:'get',        //请求的方式GET/POST

    url:"server.php",    //请求的服务器地址

    cache:false,        //是否缓存

    data:{'xmlHttp','YES'},//传递给服务器的数据,是JSON键值对格式

    dataType:'json',    //返回的数据类型

    success:function(data){//请求成功时执行的 *** 作

        var    json    =eval(data)

        for(var i=0i<json.lengthj++){//扫描数组中的每个元素

            

        }

    }

})

</script>

1.静态网页文件index.html :

<html>

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312">

<title>无标题文档</title>

<script src="selecttest.js"></script>

</head>

<body>

<form>

请选择一个:

<select name="test" onChange="showtest(this.value)">

<option value="a">test1</option>

<option value="b ">test2</option>

<option value="c">test3</option>

</select>

</form>

<p>

<h2><div id="txtdisplay"><b>测试信息将在此处列出。</b></div></h2>

</p>

</body>

</html>

2.ajax文件 (selecttest.js脚本)

var xmlHttp

//start function showHint(str)

function showtest(str)

{

xmlHttp=GetXmlHttpObject()

if (xmlHttp==null)

{

alert ("您的浏览器不支持AJAX!")

return

}

var url="gettest.php"

url=url+"?q="+str

url=url+"&sid="+Math.random()

xmlHttp.onreadystatechange=stateChanged

xmlHttp.open("GET",url,true)

xmlHttp.send(null)

}

/////////////////////////////////////////////////////////////////////////////////////////////////////

function stateChanged()

{

if (xmlHttp.readyState==4)

{

document.getElementById("txtdisplay").innerHTML=xmlHttp.responseText

}

}

////////////////////////////创建xmlHttp对象的方法///////////////////////////////////////////////

function GetXmlHttpObject()

{

var xmlHttp=null

try

{// Firefox, Opera 等

xmlHttp=new XMLHttpRequest()

}

catch (e)

{ // Internet Explorer

try

{

xmlHttp=new ActiveXObject("Msxml2.XMLHTTP")

}

catch (e)

{

xmlHttp=new ActiveXObject("Microsoft.XMLHTTP")

}

}

return xmlHttp

}

3.后台处理文件gettest.php

<?php

// HTTP/1.1

header("Cache-Control: no-store, no-cache, must-revalidate")

header("Cache-Control: post-check=0, pre-check=0", false)

// HTTP/1.0

header("Pragma: no-cache")

mysql_connect("localhost","root","password") or die("连接失败")

mysql_select_db(ajax)

mysql_query("set names gbk")

$q = $_GET['q']

$sql="SELECT * FROM test WHERE testID='".$q."'"

//$sql=$sql. "'".$q."'"

//echo $sql

$result = mysql_query($sql)

//echo $result

if($result)

{

echo ("<table>")

while ($arr = mysql_fetch_array($result)){

$name = $arr['name']

$value = $arr['value']

echo ("<tr><td><em>" .$name. "</em></td>")

echo ("<td>" .$value. "</td></tr>")

}

echo ("</table>")

}

else

{

echo "对不起,没有查找到!"

}

?>

以上三个文件可以放到同一文件夹里。

试试吧

AJAX就是一种网页和后台服务器交流的协议,一个简单的AJAX发送代码

$.post{

'服务器的网址',

'{data:'这里是要发送的数据'}',

function( return ){}{

// return 是后台服务器接收到你网页发的数据后返回的数据

}

}

PHP的echo输出的结果就是返回网页的return数据,格式是直接做返回值

PHP要返回数组就要用json封装,代码是 json_encde(数组);之后网页接受的是json格式的字符串,要自己转换为json数组。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7554099.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-07
下一篇 2023-04-07

发表评论

登录后才能评论

评论列表(0条)

保存