我正在尝试创建一个评级系统。
我有一个XML文件,其中包含以下信息:
<?xml version="1.0" encoding="ISO-8859-1"?>
<PROGRAMMEDATA>
<PROGRAMME id="1">
<TITLE>Arrow</TITLE>
<IMAGE>img/arrow.jpg</IMAGE>
<POINTS>0</POINTS>
</PROGRAMME>
...etc
<PROGRAMMEDATA>
然后我有一个表格,有程序选项和1到5分。
<form>
<select id="name">
<option selected value=""></option>
<option value="1">Arrow</option>
<option value="2">You, Me and Dupree</option>
<option value="3">Fargo</option>
<option value="4">Flash</option>
</select>
<select id="rating">
<option selected value="">stars</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
<input type="submit" value="Submit rating" onClick="saveRating()" />
</form>
这个想法是你可以选择一个程序,然后选择一个评级。然后,您可以提交该等级,然后将评级添加到XML文件中的相应程序中。
我尝试使用javascript捕获表单值,但我不知道如何将值存储在XML文件中。
var name = document.getElementById("name").value;
var rating = document.getElementById("rating").value;
我想到的另一种方法是使用PHP,并使用DOMDocument,但我无法将其附加到POINTS,它只会添加到XML文件的底部。
非常感谢任何帮助。
答案 0 :(得分:0)
这样的事情应该有效。
$file ="ratings_file.xml";
$title="test";
$image="img/arrow.jpg";
$points=0;
//load xml object
$xml= simplexml_load_file($ratings_file);
//assign title
$xml->PROGRAMME->title = $title;
//assign image
$xml->PROGRAMME->image = $image;
//assign points
$xml->PROGRAMME->points = $points;
//store the value into the file
file_put_contents($ratings_file, $xml->asXML());