Heim > Backend-Entwicklung > PHP-Tutorial > Erstellen Sie Knoten und fügen Sie sie in XML-Dokumente ein

Erstellen Sie Knoten und fügen Sie sie in XML-Dokumente ein

巴扎黑
Freigeben: 2016-11-23 10:36:48
Original
1225 Leute haben es durchsucht

PHP-Datei:

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


Verwandte Etiketten:
xml
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage