尝试使用asXML()更新XML文件时出现错误。该脚本使用SimpleXMLElement加载xml文件并更改数据。asXML()和save()之间的区别SimpleXMLElement和DOMDocument
错误似乎与权限有关。该文件夹和文件具有读取写入权限。
Warning: SimpleXMLElement::asXML(communities.xml) simpleelement.asxml failed to open stream: permission denied in c:\path\make_update.php.
PHP脚本
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
function make_update($nodeid, $name, $top, $left, $width, $height) {
$nodes = new SimpleXMLElement('communities.xml', null, true);
$returnArray = $nodes->xpath("//COMMUNITY[@ID='$nodeid']");
$node = $returnArray[0];
$node->TOP = $top;
$nodes->asXML('communities.xml');
return $node->TOP;
}
echo make_update(trim($_REQUEST['nodeid']),trim($_REQUEST['name']),trim($_REQUEST['top']),trim($_REQUEST['left']),trim($_REQUEST['width']),trim($_REQUEST['height']));
?>
在其他脚本我加载与DOM文档的XML文件,并保存$dom->save('file.xml');
。 SimpleXMLELement和DOMDOcument之间或者asXML()和save()之间有区别吗?
UPDATE 1
PHP脚本是通过从JavaScript调用动态创建的div AJAX调用。如果div在页面中不是静态的,是否会导致权限问题?
更新2
更多关于这个脚本是如何被调用的细节......我可拖动的div。当拖动停止时,我调用一个使ajax调用的javascript函数。这是此脚本的行为与没有任何权限问题的其他行为之间的一个重要区别。在这种结构中,PHP脚本与HTML页面中的用户定义函数调用的权限不同吗?
$('#dragdiv').draggable({ stop: function(event, ui) { update_div($nodeid) } });
因为一些PHP脚本没有这样的权限问题,必须有怎样的脚本是从拖动功能称为链接。