php+Ajax处理xml与json格式数据的方法示例


Posted in PHP onMarch 04, 2019

本文实例讲述了php+Ajax处理xml与json格式数据的方法。分享给大家供大家参考,具体如下:

一、ajax如何处理xml数据格式

register.php

只需修改上一篇《php+Ajax无刷新验证用户名操作》中chuli函数部分

functionchuli(){
 // window.alert("cuhli函数被调用"+myXmlHttpRequest.readyState);
  //我要取出从register.php返回的数据
  if(myXmlHttpRequest.readyState==4){
    //------------看看如何取出xml数据--------
    //获取mes节点
    var mes=myXmlHttpRequest.responseXML.getElementsByTagName("mes");
    //取出mes节点值
    var mes_value=mes[0].childNodes[0].nodeValue;
    $("myres").value=mes_value;
  }
}

Process.php 代码

<?php
    //第一讲话告诉浏览器返回的数据是xml格式
    header("Content-Type:text/xml;charset=utf-8");
    //告诉浏览器不要缓存数据
    header("Cache-Control:no-cache");
    //接收数据(这里要和请求方式对于 _POST 还是 _GET)
    $username=$_POST['username'];
    //这里我们看看如何处理格式是xml
    $info="";
    if($username=="李四"){
       $info.="<res><mes>用户名不可以用,对不起</mes></res>";//注意,这里数据是返回给请求的页面.
    }else{
       $info.="<res><mes>用户名可以用,恭喜</mes></res>";
    }
    echo $info;
?>

二、ajax如何处理json数据格式

json格式介绍

① json的格式如下 :

"{属性名:属性值,属性名:属性值,.... }"

因为json数据是原生态数据,因此这种数据格式很稳定,而且描述能力强,我们建议大家使用json格式

② json数据格式的扩展

如果服务器返回的json 是多组数据,则格式应当如下:

$info="[{"属性名":"属性值",...},{"属性名":"属性值",...},....]";

在xmlhttprequest对象接收到json数据后,应当这样处理

//转成对象数组
varreses=eval("("+xmlHttpRequest.responseText+")");
//通过reses可以取得你希望的任何一个值
reses[?].属性名

③ 更加复杂的json数据格式

<script language="JavaScript">
   var people ={
      "programmers":
       [
        {"firstName":"Brett", "email": "brett@newInstance.com" },
        {"firstName":"Jason", "email": "jason@servlets.com" }
       ],
      "writer":
           [
              {"writer":"宋江","age":"50"},
              {"writer":"吴用","age":"30"}
           ],
           "sex":"男"
};
window.alert(people.programmers[0].firstName);
window.alert(people.programmers[1].email);
window.alert(people.writer[1].writer);
window.alert(people.sex);
</script>

register.php 部分中chuli函数

function chuli(){
  if(myXmlHttpRequest.readyState==4){
    //------------看看如何取出json数据--------
    var mes= myXmlHttpRequest.responseText;
    //使用evla函数将mes转换成相应的对象
    var mes_obj=eval("("+mes+")");
    $("myres").value=mes_obj.res;
  }
}

process.php 代码

<?php
  header("Content-Type: text/html;charset=utf-8");
  //告诉浏览器不要缓存数据
  header("Cache-Control: no-cache");
  $info="";
  if($username=="1"){
    $info='{"res":"该用户不可用"}';
  }
  else{
    //$info是一个json数据格式的字串
    $info='{"res":"恭喜,用户名可用"}';
  }
echo $info;
?>

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
中篇:安装及配置PHP
Dec 13 PHP
PHP 伪静态技术原理以及突破原理实现介绍
Jul 12 PHP
php简单定时执行任务的实现方法
Feb 23 PHP
php实现表单多按钮提交action的处理方法
Oct 24 PHP
PHP文件上传类实例详解
Apr 08 PHP
PHP实现导出带样式的Excel
Aug 28 PHP
一个简单的php MVC留言本实例代码(必看篇)
Sep 22 PHP
PHP中Laravel 关联查询返回错误id的解决方法
Apr 01 PHP
php+mysql+jquery实现简易的检索自动补全提示功能
Apr 15 PHP
使用PHP连接数据库_实现用户数据的增删改查的整体操作示例
Sep 01 PHP
php简单检测404页面的方法示例
Aug 23 PHP
实例讲解PHP表单
Jun 10 PHP
php+Ajax无刷新验证用户名操作实例详解
Mar 04 #PHP
实例介绍PHP删除数组中的重复元素
Mar 03 #PHP
PHP+Ajax简单get验证操作示例
Mar 02 #PHP
PHP结合jquery ajax实现上传多张图片,并限制图片大小操作示例
Mar 01 #PHP
PHP实现获取毫秒时间戳的方法【使用microtime()函数】
Mar 01 #PHP
PHP中“=&gt;
Mar 01 #PHP
PHP htmlspecialchars_decode()函数用法讲解
Mar 01 #PHP
You might like
php的mkdir()函数创建文件夹比较安全的权限设置方法
2014/07/28 PHP
php+mysqli实现批量执行插入、更新及删除数据的方法
2015/01/29 PHP
php获取一定范围内取N个不重复的随机数
2016/05/28 PHP
Zend Framework校验器Zend_Validate用法详解
2016/12/09 PHP
thinkPHP多表查询及分页功能实现方法示例
2017/07/03 PHP
PHP使用HTML5 FileApi实现Ajax上传文件功能示例
2019/07/01 PHP
Jquery+JSon 无刷新分页实现代码
2010/04/01 Javascript
JQuery中$之选择器用法介绍
2011/04/05 Javascript
jQuery关于导航条背景切换效果实现示例
2013/09/04 Javascript
js弹出确认是否删除对话框
2014/03/27 Javascript
node.js中的events.emitter.once方法使用说明
2014/12/10 Javascript
JS Array.slice 截取数组的实现方法
2016/01/02 Javascript
js时间比较 js计算时间差的简单实现方法
2016/08/26 Javascript
JavaScript的兼容性与调试技巧
2016/11/22 Javascript
JS键盘版计算器的制作方法
2016/12/03 Javascript
bootstrap的常用组件和栅格式布局详解
2017/05/02 Javascript
详解@Vue/Cli 3 Invalid Host header 错误解决办法
2019/01/02 Javascript
vue实现简单全选和反选功能
2020/09/15 Javascript
python 测试实现方法
2008/12/24 Python
Python爬取国外天气预报网站的方法
2015/07/10 Python
pygame游戏之旅 计算游戏中躲过的障碍数量
2018/11/20 Python
python中with语句结合上下文管理器操作详解
2019/12/19 Python
Python配置pip国内镜像源的实现
2020/08/20 Python
python 动态渲染 mysql 配置文件的示例
2020/11/20 Python
美国最受欢迎的度假目的地优惠套餐:BookVIP
2018/09/27 全球购物
学院书画协会部门职责
2013/11/28 职场文书
工程开工庆典邀请函
2014/02/01 职场文书
交通事故调解协议书
2014/04/16 职场文书
如何写求职信
2014/05/24 职场文书
商场客服专员岗位职责
2014/06/13 职场文书
计算机相关专业自荐信
2014/07/02 职场文书
校庆团日活动总结
2014/08/28 职场文书
2015年毕业实习工作总结
2014/12/12 职场文书
初三语文教学计划
2015/01/22 职场文书
2019年中,最受大众欢迎的6本新书
2019/08/07 职场文书
导游词之临安白水涧
2019/11/05 职场文书