当前位置:Gxlcms > PHP教程 > XML文档创建及插入节点

XML文档创建及插入节点

时间:2021-07-01 10:21:17 帮助过:14人阅读

Php文件:

<?php 
  header("content-type:text/html;charset=utf-8"); 
  //获得表单提交的数据 
$data=$_POST['data']; 
if(!empty($data))                     //判断数据是否获得,不为空则继续执行 
{ 
   foreach($data['tag'] as $v)        //遍历数组,获得具体内容 
   { 
        $content[$v[1]]=$v[2];      
   } 
   //json_encode 
    $content=json_encode($content); 
    $recom_position=$data['recom_position']; 
    $recom_title=$data['recom_title']; 
    $recom_url=$data['recom_url']; 
    //读取文件config.ini 
    $fp=fopen("data/config.ini","r"); 
    $a=fgets($fp); 
    fclose($fp); 
    
    $a=substr($a,1);     //截取字符串,去掉第一个空格 
    $b=explode(" ",$a);  //返回数组 
    //判断位置是否唯一 
    if(in_array($recom_position,$b)) 
    { 
        
        echo "<script language='javascript'>"; 
        echo "alert('您选择的位置【 ".$recom_position." 】已经存在,请返回重新选择');"; 
        echo "window.location='index.html';"; 
        echo "</script>"; 
    } 
    else 
    { 
           $str=" ".$recom_position; 
           $fp=fopen("data/config.ini","a"); 
           fwrite($fp,$str); 
           fclose($fp); 
          //以xml格式组成字符串 
          $data="<data> 
                    <seqnum><![CDATA[".$data['recom_position']."]]></seqnum> 
                    <recom_position><![CDATA[".$data['recom_position']."]]></recom_position> 
                    <recom_title><![CDATA[".$data['recom_title']."]]></recom_title> 
                    <recom_url><![CDATA[".$data['recom_url']."]]></recom_url> 
                    <recom_content><![CDATA[[".$content."]]></recom_content> 
                    </data>"; 
          //创建一个文档实例 
           $document = new DOMDocument('1.0', "UTF-8"); 
        if(!is_file("data/AddArray.xml"))         //判断是否存在此文件,如果不存在则执行下面代码,创建xml文档及结构 
        { 
                  //使用缩进格式化
输出 $document->formatOutput = true; //创建<priority>根节点 $root = $document->createElement('priority'); $document->appendChild($root); //设置priority的属性 $root->setAttribute('elapsedTime','352'); $root->setAttribute('countNums','5'); //创建<datalist>子节点 $datalist = $document->createElement('datalist'); //创建<data>子节点 $data = $document->createElement('data'); //创建<data>元素的第一个子节点<seqnum>,并设置其属性 $seqnum = $document->createElement('seqnum'); $seqnum->appendChild($document->createTextNode("<![CDATA['$recom_position']]>")); $data->appendChild($seqnum); //创建<data>元素的第二个子节点<recom_position>,并设置其属性 $recomposition = $document->createElement('recom_position'); $recomposition->appendChild($document->createTextNode("<![CDATA['$recom_position']]>")); $data->appendChild($recomposition); //创建<data>元素的第三个子节点<recom_title>,并设置其属性 $recomtitle = $document->createElement('recom_title'); $recomtitle->appendChild($document->createTextNode("<![CDATA['$recom_title']]>")); $data->appendChild($recomtitle); //创建<data>元素的第四个子节点<recom_url>,并设置其属性 $recomurl = $document->createElement('recom_url'); $recomurl->appendChild($document->createTextNode("<![CDATA['$recom_url']]>")); $data->appendChild($recomurl); //创建<data>元素的第五个子节点<recom_content>,并设置其属性 $recomcontent = $document->createElement('recom_content'); $recomcontent->appendChild($document->createTextNode("<![CDATA['$content']]>")); $data->appendChild($recomcontent); //追加<datalist>节点到根节点后 $datalist->appendChild($data); $root->appendChild($datalist); //保存对象树到AddArray.xml $document->save('data/AddArray.xml'); if(is_file("data/AddArray.xml")) { echo "<script language='javascript'>"; echo "alert('数据提交成功!');"; echo "window.location='index.html';"; echo "</script>"; } else { echo "数据提交失败,<a href='index.html'>点击这里</a>返回重新提交"; } } else { //设置格式 $document->formatOutput = true; //加载文件 $document->load ('data/AddArray.xml'); //获取上级节点 $utdm = $document->getElementsByTagName ('datalist'); //data 节点 $info = $utdm->item(0); //获得data下面的子节点的数据 $seqnum = $document->createElement("seqnum","<![CDATA['$recom_position']]>"); $recomposition = $document->createElement("recom_position","<![CDATA['$recom_position']]>"); $recomtitle = $document->createElement("recom_title","<![CDATA['$recom_title']]>"); $recomurl = $document->createElement("recom_url","<![CDATA['$recom_url']]>"); $recomcontent = $document->createElement("recom_content","<![CDATA['$content']]>"); $data = $document->createElement("data"); //给每个节点添加内容 $data->appendChild($seqnum); $data->appendChild($recomposition); $data->appendChild($recomtitle); $data->appendChild($recomurl); $data->appendChild($recomcontent); $info->appendChild($data); //保存文档 $document->save("data/AddArray.xml"); $fp = fopen("data/AddArray.xml", "w"); //打开XML文件,写入 if(fwrite($fp,$document->saveXML())) { echo "<script language='javascript'>"; echo "alert('数据提交成功!');"; echo "window.location='index.html';"; echo "</script>"; } else { echo "数据提交失败,<a href='index.html'>点击这里</a>返回重新提交"; } fclose($fp);//关闭XML文件 } } } else { echo "没有获得任何数据"; } ?>

人气教程排行