【问题标题】:inserting data to an existing node in xml将数据插入到 xml 中的现有节点
【发布时间】:2012-05-07 04:39:04
【问题描述】:

我是 XML 和 PHP 的新手,但我有这个项目,这是需要做的。

我有一个这样的 html 表单:

<table>   
  <tr>
    <td align="right" width="120px">First name:</td>
    <td><input id="txtfname" style="width: 200px" type="text" /></td>
  </tr>
  <tr>
    <td align="right">Last name:</td>
    <td><input id="txtlname" style="width: 200px" type="text" /></td>
  </tr>
  <tr>
    <td align="right">Business name:</td>
    <td><input id="txtbisname" style="width: 200px" type="text" /></td>
  </tr>
</table>

我有一个这样的 xml 文件:

<data>
    <first_name></first_name>
    <last_name></last_name>
    <business_name></business_name>
</data>

是否可以使用 php 文件将数据从 html 表单写入 xml 文件? 如果是这样,谁能告诉我怎么做。我真的需要解决这个问题。

在此之后我还需要将 xml 文件传输到 sql 数据库。

我全神贯注。

谢谢..

【问题讨论】:

    标签: php html sql xml forms


    【解决方案1】:

    试试这个。它假定,您有一个表单中的 HTML 表格并将其发布到服务器。

    <?php
    $str = '<?xml version="1.0" encoding="utf-8"?><data></data>';
    $xml = simplexml_load_string( $str );
    
    $fname = trim( $_POST[ 'txtfname' ] );
    $lname = trim( $_POST[ 'txtlname' ] );
    $bname = trim( $_POST[ 'txtbisname' ] );
    
    $fname = htmlentities( $fname, ENT_COMPAT, 'UTF-8', false );
    $lname = htmlentities( $lname, ENT_COMPAT, 'UTF-8', false );
    $bname = htmlentities( $bname, ENT_COMPAT, 'UTF-8', false );
    
    $xml->addChild( 'first_name', $fname );
    $xml->addChild( 'last_name', $lname );
    $xml->addChild( 'business_name', $bname );
    
    $doc = new DOMDocument( '1.0' );
    $doc->formatOutput = true;
    $doc->preserveWhiteSpace = true;
    $doc->loadXML($xml->asXML(), LIBXML_NOBLANKS);
    $doc->save( 'data.xml' );
    ?>
    

    现在,data.xml 是 xml 文件。希望这会有所帮助。

    【讨论】:

    • 谢谢。 ^_^ 这正是我所需要的。你救了我的命。
    • 快速提问。数据显示如下 JamesJr.匹兹堡 CEO 俱乐部。但我需要它像我的示例代码一样显示。
    • 你真的是一个救生员。再次感谢@Pushpesh。 ^_^
    【解决方案2】:

    我认为 XSLT 对您很有用。看看这个:http://www.w3schools.com/xsl/

    【讨论】:

    • 我认为 XSLT 只是一个适用于 xml 文档的样式表
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-11
    • 1970-01-01
    相关资源
    最近更新 更多