Я новичок в xml и не могу понять, как установить атрибут rate для узла code . По какой-то причине он устанавливает атрибут для узла currency .
<?
@date_default_timezone_set("GMT");
if (isset($_POST['Submit']))
{
$xml=new DomDocument("1.0","UTF-8");
$xml->formatOutput=true;
$xml->preserveWhiteSpace=false;
$xml->load('rates.xml');
$curcode = $_POST['currency-code'];
$newrate = $_POST['rate'];
$change = new DOMXpath($xml);
$update = $change->query("//*[code = '$curcode']");
$update->item(0)->setAttribute("rate", $newrate);
$xml->save('rates.xml');
}
?>
Вот XML:
<currencies>
<currency>
<code rate="18.543343372942">ZAR</code>
<cname>Rand</cname>
<cntry>Lesotho, Namibia, South Africa</cntry>
</currency>
<currency>
<code rate="123">test</code>
<cname>ewwwwwww</cname>
<cntry>rew</cntry>
</currency>
<currency rate="432432434332432">
<code rate="1234">testnew</code>
<cname>nene</cname>
<cntry>fnnfr</cntry>
</currency>
</currencies>
Как видите, на последнем узле currency обновляется курс валюты вместо кода code .
Любая помощь приветствуется.