好的,所以这就是我想要做的事情(注意:我不熟悉
PHP):
我有一个电影/系列等的注册表格.填写表格中的数据然后被注册(register.php)并发送到MySQL数据库,这是正常的.接下来是:我还希望在相同的寄存器文件(register.php)中将数据存储在现有的XML文件(data.xml)中.这里重要的是每个成功提交的表单都存储在同一个XML文件(data.xml)中.
我通过while循环在HTML表中显示所有已注册的“电影”,它现在从我的数据库中收集数据.我也在寻求帮助,在表格之外的某个地方,添加一个按钮,在新标签(?)中生成/显示XML文件的内容.没有右键单击查看源,因为表数据是从MySQL收集的,这是不可能的.
这是我到目前为止所做的事情(这可以设法在data.xml中保存每个提交,但如果另外提交则替换 – 我想添加NOT替换):
首先,index.php:
接下来,data.xml:
最后,register.php:
require_once('db.php');
$str = '<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="xsl.xsl"?>';
$xml = simplexml_load_string($str);
$name = $_POST['name'];
$date = $_POST['date'];
$time = $_POST['time'];
$bline = $_POST['bline'];
$synopsis = $_POST['synopsis'];
$leadtext = $_POST['leadtext'];
$url = $_POST['url'];
$name = htmlentities($name, ENT_COMPAT, 'UTF-8', false);
$date = htmlentities($date, ENT_COMPAT, 'UTF-8', false);
$time = htmlentities($time, ENT_COMPAT, 'UTF-8', false);
$bline = htmlentities($bline, ENT_COMPAT, 'UTF-8', false);
$synopsis = htmlentities($synopsis, ENT_COMPAT, 'UTF-8', false);
$leadtext = htmlentities($leadtext, ENT_COMPAT, 'UTF-8', false);
$url = htmlentities($url, ENT_COMPAT, 'UTF-8', false);
$xml->program->addChild('name', $name);
$xml->program->addChild('date', $date);
$xml->program->addChild('start_time', $time);
$xml->program->addChild('b-line', $bline);
$xml->program->addChild('synopsis', $synopsis);
$xml->program->addChild('leadtext', $leadtext);
$xml->program->addChild('url', $url);
$doc = new DOMDocument('1.0');
$doc->formatOutput = true;
$doc->preserveWhiteSpace = true;
$doc->loadXML($xml->asXML(), LIBXML_NOBLANKS);
$doc->save('data.xml');
我已经搜索了几个小时而没有找到我正在寻找的确切内容.我也尽力尝试自己的“非工作解决方案”.另外,我选择了与此问题相关的代码部分.