0
內容未在託管服務器上的xml文件中更新。XML文件未通過託管服務器上的PHP腳本進行更新
<?php
$xml = new DOMDocument('1.0', 'utf-8');
$xml->formatOutput = true;
$xml->preserveWhiteSpace = false;
$xml->load('rates.xml');
//Get item Element
$element = $xml->getElementsByTagName('rates')->item(0);
//Load child elements
$name = $element->getElementsByTagName('gold')->item(0);
$comment = $element->getElementsByTagName('silver')->item(0);
//Replace old elements with new
$element->replaceChild($name, $name);
$element->replaceChild($comment, $comment);
?>
<body><hr>
<form method="POST" action='' autocomplete="off">
Enter Gold Rate (Rs/10g) : <input required type="text" value="<?php echo $name->nodeValue ?>" name="gold-rate" pattern="^[0-9]{5}$" placeholder="for 10g"></br></br>
Enter Silver Rate (Rs/kg) : <input required type="text" value="<?php echo $comment->nodeValue ?>" name="silver-rate" pattern="^[0-9]{5}$" placeholder="for 10g"/></br></br>
<input name="submit" type="submit" />
</form><hr>
</body>
<?php
if (isset($_POST['submit']))
{
$name->nodeValue = $_POST['gold-rate'];
$comment->nodeValue = $_POST['silver-rate'];
htmlentities($xml->save('sample.xml'));
}
?>
上面的代碼是關於表單提交的兩個值,我試圖保存在XML中,然後在其他地方顯示它。在本地主機上獲得成功,但在服務器上,這個PHP腳本無法更改我的XML文件的數據。我設置的文件夾的權限是755,所有文件都是644.試圖更改權限,最後導致500內部錯誤。由於這看起來是服務器端安全問題,我不知道最終尋找解決方案的位置。 服務器運行在PHP 5.6上,嘗試了來自其他用戶的解決方案,但沒有成果。我應該改變一些在PHP中,或者我必須聯繫我的託管服務提供商。
實際上,我保存數據的xml與我加載的xml不同,它在代碼'sample.xml'中,腳本工作得很好,感謝以上信息 – 2015-02-24 10:44:41