使用php附加XML文件

时间:2013-05-31 21:56:41

标签: php xml

我有一个脚本,可以使用HTML表单中的数据创建XML文件。它工作得很好,创建了XML文件,表单将数据写入其中。我很难将数据附加到XML文件。每次我从表单向XML文件提交新数据时,它只会覆盖最后一个而不是仅仅将数据添加到它。

这是我用来从表单创建和编写XML文件的php脚本。

<?php

if (isset($_POST['lsr-submit']))
    {
        header('Location: http://www.mesquiteweather.net/wxmesqLSR.php');
    }

$str = '<?xml version="1.0" encoding="UTF-8"?><entrys></entrys>';
$xml = simplexml_load_string($str);

$fname = $_POST['firstname'];
$lname = $_POST['lastname'];
$location = $_POST['location'];
$report = $_POST['report'];
$description = $_POST['desc'];

$fname = htmlentities($fname, ENT_COMPAT, 'UTF-8', false);
$lname = htmlentities($lname, ENT_COMPAT, 'UTF-8', false);
$location = htmlentities($location, ENT_COMPAT, 'UTF-8', false);
$report = htmlentities($report, ENT_COMPAT, 'UTF-8', false);
$description = htmlentities($description, ENT_COMPAT, 'UTF-8', false);

$xml->reports = "";
$xml->reports->addChild('timestamp', date("D M jS g:i a",time()));
$xml->reports->addChild('fname', $fname);
$xml->reports->addChild('lname', $lname);
$xml->reports->addChild('location', $location);
$xml->reports->addChild('report', $report);
$xml->reports->addChild('description', $description);

$doc = new DOMDocument('1.0');
$doc->formatOutput = true;
$doc->preserveWhiteSpace = true;
$doc->loadXML($xml->asXML(), LIBXML_NOBLANKS);
$doc->save('test2.xml');

?>

这是XML输出

XML FILE

HTML表单,以防无论如何想要查看行为。

HTML FORM

-Thanks!

0 个答案:

没有答案