php查询mysql中的数据,并将结果返回为JSON格式,提取JSON中的数据,写入页面不同的id号中
2014-04-11 17:31
1131 查看
有这样一个问题:用AJAX返回数据时,怎么提取其中的信息,并将其写入网页的不同部分?
在W3CSCHOOL中提到过用AJAX返回的数据用JSON数据格式,本人使用的是PHP作为后台脚本。
一开始自己拼装JSON格式的数据,但是效果不好,后来查资料用了PHP中json_encode()函数,
$str是要待处理的数据,使用下面的语句即可输出json格式的数据,
其中JSON_NESCAPED_UNICODE说的是使用UNICODE格式的编码,
手册上说“该函数只能接受 UTF-8 编码的数据”,格式有很多种
前台页面发起ajax请求,核心部分是处理ajax返回的数据xmlHttp.respondText,
利用这条语句处理 txt=xmlHttp.responseText ;var obj = eval ("(" + txt + ")");,其中eval函数是关键。
eval() 函数使用的是 JavaScript 编译器,可解析 JSON 文本,然后生成 JavaScript 对象。必须把文本包围在括号中,这样才能避免语法错误:
ajax请求的代码如下:
从代码中我们可以看出obj.title 提取出了返回文本中的title信息,并将其写入页面中id='title'的元素中。
在W3CSCHOOL中提到过用AJAX返回的数据用JSON数据格式,本人使用的是PHP作为后台脚本。
一开始自己拼装JSON格式的数据,但是效果不好,后来查资料用了PHP中json_encode()函数,
$str是要待处理的数据,使用下面的语句即可输出json格式的数据,
其中JSON_NESCAPED_UNICODE说的是使用UNICODE格式的编码,
手册上说“该函数只能接受 UTF-8 编码的数据”,格式有很多种
echo json_encode($row,JSON_UNESCAPED_UNICODE);
前台页面发起ajax请求,核心部分是处理ajax返回的数据xmlHttp.respondText,
利用这条语句处理 txt=xmlHttp.responseText ;var obj = eval ("(" + txt + ")");,其中eval函数是关键。
eval() 函数使用的是 JavaScript 编译器,可解析 JSON 文本,然后生成 JavaScript 对象。必须把文本包围在括号中,这样才能避免语法错误:
ajax请求的代码如下:
var xmlHttp=null function get_pic(str) { /*search the file in mysql table pydot and pydot_g, then give the result to front page.start ajax request*/ xmlHttp=GetXmlHttpObject() if (xmlHttp==null) { alert ("Browser does not support HTTP Request") return } var url="Public/Js/json.php"; url=url+"?q="+str.innerHTML url=url+"&sid="+Math.random() //alert(url) xmlHttp.onreadystatechange=stateChanged xmlHttp.open("GET",url,true) xmlHttp.send(null) } function stateChanged() { var txt,x; if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") { txt=xmlHttp.responseText ; //alert(txt) var obj = eval ("(" + txt + ")"); document.getElementById("other").innerHTML=obj.other; document.getElementById("title").innerHTML=obj.title; } } 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; }
从代码中我们可以看出obj.title 提取出了返回文本中的title信息,并将其写入页面中id='title'的元素中。
相关文章推荐
- ajax根据ID查询数据库并返回Json格式数据返回js,使用append显示到页面。判断json值为[]或者[[]]的问题。
- php查询mysql,返回json格式数据
- json格式数据,将数据库中查询的结果转换为json, 然后调用接口的方式返回json(方式一)
- php执行数据库查询返回json格式数据
- php执行数据库查询返回json格式数据
- 通过查询数据库中的数据匹配在页面上:(set单条数据属性是在页面上的显示与foreach的不同) 通过ID修改提取位置表信息
- 根据id查询数据(向前台返回json格式的数据)
- php执行数据库查询返回json格式数据
- php将从数据库查询到的数据转化为json格式,并写入json文件中
- MySQL树形查询结果封装成Json格式,返回给easyui treegrid
- php 写入数据到MySQL以及从MySQL获取数据,页面出现乱码的解决方法
- JQuery获取并解析php返回的json格式数据的简单示例
- php 请求返回json格式数据
- php 返回的Json格式数据中文乱码
- php get接口,并在浏览器中以json格式返回查找到的数据
- .net mvc controller查询数据返回给前端json格式数据
- php插入mysql数据返回id
- Atitit.列表页面and条件查询的实现最佳实践(1)------设置查询条件and提交查询and返回json数据
- PHP简单获取数据库查询结果并返回JSON
- phpStudy4——前端页面使用Ajax请求并解析php返回的json数据