繁体   English   中英

加载到表单中后保存XML文件并进行编辑

[英]Save XML file after loaded in form and edit

我创建了这个PHP脚本,将XML文件的内容加载到表单中,但是在修改字段后无法保存它。
我想知道是否有可能做到这一点,以及如何做到。 谢谢毛

<form name="form" method="post" action="">
    <?php
    if (file_exists('data/mess.xml')) {
        $xml = simplexml_load_file('indexdata/index_messages_en.xml');
        foreach ($xml->data as $el) {
            echo "<label for='{$el}'>{$el['name']}</label>
          <input name='{$el['name']}' value='{$el}'/><br>";
        }
    } else {
        exit('Failed to open');
    }
    ?>
    <input type="submit" name="submit" id="submit" value="Update">
</form>
<?php
    if (isset($_POST['submit'])) {
        // method for save edited field in same xml file
    }
?>

我的mess.xml文件:

<?xmlversion = "1.0"encoding = "UTF-8"?>
<project>
    <data name="project_title">
        <![CDATA[New Project]]></data>
    <data name="section_title">
        <![CDATA[ES000021903]]></data>
</project>

当然可以,您需要重写文件以将更改从一个编辑更改为另一个。

查看file_put_contentsfopen

当然,您必须使用标签和属性重写整个XML。 您可以使用简单的字符串来完成此操作:

$myxml='
<?xmlversion = "1.0"encoding = "UTF-8"?>
<project>
    <data name="project_title">
        <![CDATA['.$_POST['project_title'].']]></data>
    <data name="section_title">
        <![CDATA['.$_POST['section_title'].']]></data>
</project>';

或者,通过$_POST创建一个新的SimpleXMLElement并将其转换为字符串, 如此处答案所示

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM