我尝试使用PHP从表单中获取输入并将其写入XML文件。它适用于独特的字段,但有一个字段可以输入4次。
如果输入多个,则只将最后一个写入XML文件。
我的PHP:
<?php
if(isset($_REQUEST['ok'])){
$xml = new DOMDocument("1.0","UTF-8");
$xml->load("../Players.xml");
$rootTag = $xml->getElementsByTagName("site")->item(0);
$entryTag = $xml->createElement("entry");
$nameTag = $xml->createElement("name",$_REQUEST['name']);
$countryTag = $xml->createElement("country",$_REQUEST['country']);
$memTag = $xml->createElement("mem",$_REQUEST['mem']);
$entryTag->appendChild($nameTag);
$entryTag->appendChild($countryTag);
$entryTag->appendChild($memTag);
$rootTag->appendChild($entryTag);
$xml->save("../Players.xml");
}
?>
形式:
<form action="index.php" method="post">
<input type="text" name="name"/>
<input type="text" name="country"/>
<input type="text" name="mem"/>
<input type="text" name="mem"/>
<input type="text" name="mem"/>
<input type="text" name="mem"/>
<input type="submit" name="ok"/>
</form>
答案 0 :(得分:0)
从技术上讲,只需几对类似于
的指令$memTag = $xml->createElement("mem",$_REQUEST['mem']);
$entryTag->appendChild($memTag);
结果应该是几个附加节点,如:
<entry>
<mem>bla-bla</mem>
<mem>bla123</mem>
</entry>
但是......为什么参数直接在$ _REQUEST? 你是否用名称&#39; mem&#39;检查了多少参数?是从浏览器发送的?