帮别人修改了一个PHP中创建xml的ajax程序,感觉很是罗嗦,自己对PHP也不是太了解,也都是通过google才最终完成,总算是实现了功能。
一共只有两个文件,一个html页面,还有一个服务器端文件
首先是html,填写姓名、年龄、性别,然后服务器接受返回xml格式,并解析显示在test的后面。
html文件:
<script language="javascript">
function InitAjax()
{
var ajax=false;
try {
ajax = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
ajax = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
ajax = false;
}
}
if (!ajax && typeof XMLHttpRequest!='undefined') {
ajax = new XMLHttpRequest();
}
return ajax;
}
function saveUserInfo()
{
var name = document.getElementById("name");
var age = document.getElementById("age");
var sex = document.getElementById("sex");
var f = document.user_info;//获取表单对象和用户信息值
var userName = f.user_name.value;
var userAge = f.user_age.value;
var userSex = f.user_sex.value;
//接收表单的URL地址
var url = "./save_info.php?user_name="+ userName +"&user_age="+ userAge +"&user_sex="+ userSex;
var ajax = InitAjax();
ajax.open("POST", url, true);
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
ajax.send(null);
ajax.onreadystatechange = function() {
if (ajax.readyState == 4 && ajax.status == 200) {
alert(ajax.responseText);
if(window.ActiveXObject){
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async = false;
xmlDoc.loadXML(ajax.responseText);
}else{
var parser = new DOMParser();
var xmlDoc = parser.parseFromString(ajax.responseText,"text/xml");
}
var hasError = xmlDoc.getElementsByTagName('error').length > 0 ? true:false;
if(hasError){
alert("dom error");
}else{
document.getElementById("name").innerText=xmlDoc.getElementsByTagName('name')[0].childNodes[0].nodeValue;
document.getElementById("age").innerText=xmlDoc.getElementsByTagName('age')[0].childNodes[0].nodeValue;
document.getElementById("sex").innerText=xmlDoc.getElementsByTagName('sex')[0].childNodes[0].nodeValue;
}
}
}
}
</script>
<form name="user_info" method="post">
<table>
<tr><td>姓名:<input type="text" name="user_name" /></td><td><div id="name"></div></td></tr>
<tr><td>年龄:<input type="text" name="user_age" /></td><td id="age"></td></tr>
<tr><td>性别:<input type="text" name="user_sex" /><br /></td><td id="sex"></td></tr>
<tr><td><input type="button" value="提交表单" onClick="saveUserInfo()"></td><td></td></tr>
</table>
</form>
PHP文件:
<?php
// create doctype
$dom = new DOMDocument('1.0', 'UTF-8');
$user_name=iconv('gbk','utf-8',$user_name);
$user_age=iconv('gbk','utf-8',$user_age);
$user_sex=iconv('gbk','utf-8',$user_sex);
// create root element
$root = $dom->createElement("msg");
//$root->setAttribute('ID',"123");
$id = $dom->createAttribute("id");
$idValue = $dom->createTextNode("123");
$id->appendChild($idValue);
$root->appendChild($id);
$dom->appendChild($root);
// create child element
$item = $dom->createElement("name");
$root->appendChild($item);
// create text node
$text = $dom->createTextNode($user_name);
$item->appendChild($text);
$item = $dom->createElement("age");
$root->appendChild($item);
$text = $dom->createTextNode($user_age);
$item->appendChild($text);
$item = $dom->createElement("sex");
$root->appendChild($item);
$text = $dom->createTextNode($user_sex);
$item->appendChild($text);
// save and display tree
echo $dom->saveXML();
?>
分享到:
相关推荐
PHP 提供了多种方式来生成和操作 XML 数据。这些功能非常强大,允许你创建、读取、修改和保存 XML 文档。在 PHP 中生成 XML 的常用方法包括使用 DOM...本压缩包即是PHP中使用 DOMDocument 生成XML的示例程序文件。
主要功能:php中使用DOM类读取XML文件 设计知识点: 1、XML节点循环读取 2、用iconv()函数实现编码转换,防止中文乱码 holiday.xml文件如下 复制代码 代码如下: <?xml version=”1.0″ encoding=”UTF-8″?> ...
PHP中处理XML文件通常使用DOM(Document Object Model)库,如`DOMDocument`和`DOMXPath`。`notes.php`可能会使用这些类来解析XML,提取所需数据。例如,使用DOMXPath查询所有留言: ```php $xml = new DOMDocument...
下面将详细讲解如何在PHP中使用DOMDocument来获取和操作DOM元素。 首先,我们需要了解DOMDocument类的一些主要属性和方法: 1. **属性**: - `Attributes`: 存储节点的属性列表,只读。 - `childNodes`: 存储...
PHP Simple HTML DOM Parser是一个轻量级且易于使用的库,它允许开发者像操作DOM对象一样方便地处理HTML文档,同时也支持jQuery风格的选择器,使得对HTML元素的操作更加直观。本文将详细讲解这个库的核心概念、功能...
PHP5对domxml的支持与php4不同,比如这些函数就没有了 domxml_new_doc domxml_new_xmldoc domxml_open_file 使用这个代码就可以在php5里继续使用php4里的domxml函数
simple_html_dom中文解析手册
PHP(Hypertext Preprocessor)是一种开源的服务器端脚本语言,特别适合于Web开发,可嵌入到HTML中使用。PHP能够处理表单数据、生成动态网页内容、访问数据库等,为网页数据采集提供基础支持。 2. **HTML DOM解析*...
php simple html dom
例如,`find()`方法可以用来查找匹配CSS选择器的元素,而`getElementById()`和`getElementsByTagName()`等方法则对应于DOM中的方法,方便我们根据ID或标签名选取元素。 2. **HTML解析与操作**:使用`simple_...
以下内容将详细介绍PHP中使用DOM将XML数据存入数组的方法。 首先,为了使用DOM扩展,确保PHP环境已启用DOM扩展。接下来,创建一个`DOMDocument`对象,并指定XML的版本和编码。通过`load`方法加载XML文件,然后可以...
### PHP Simple HTML DOM 解析器使用入门 #### 一、简介 在Web开发领域,解析HTML文档是一项常见的任务。PHP Simple HTML DOM Parser是一款强大的库,它简化了这一过程,使得开发者能够更加高效地处理HTML文档。该...
在这一教程中,我们将深入探讨如何使用PHP的DOM扩展来创建和操作XML文件。XML(eXtensible Markup Language)是一种用于存储和传输数据的标准格式,它具有结构化、自描述性的特点,使得数据易于解析和处理。PHP DOM...
在PHP中,有多种方法来处理XML,包括使用DOM库、SAX解析器和正则表达式。DOM(Document Object Model)库是其中最常用的一种,它将整个XML文档加载到内存中,形成一棵节点树,便于遍历和操作。 例如,要读取清单1中...
HTML DOM(Document Object Model)是HTML和XML文档的树型结构表示,它为网页提供了一种标准的编程接口,使得开发者可以通过JavaScript或PHP等语言来操作网页中的元素,实现动态更新、添加、删除以及修改页面内容。...