我有一個XML顯示客戶端徽標,並希望通過PHP面板添加徽標。當前XML代碼: 在使用PHP的特定節點之前更新XML插入節點
<item>
<image><![CDATA[images/clients_5.gif]]></image>
</item>
<item>
<image><![CDATA[images/clients_6.gif]]></image>
</item>
<item>
<image><![CDATA[images/clients_7.gif]]></image>
</item>
<item>
<image><![CDATA[images/clients_8.gif]]></image>
</item>
<item>
<image><![CDATA[images/clients_9.gif]]></image>
</item>
<item>
<image><![CDATA[images/clients_10.gif]]></image>
</item>
<item>
<image><![CDATA[images/clients_11.gif]]></image>
</item>
<item>
<image><![CDATA[images/clients_12.gif]]></image>
</item>
<item>
<image><![CDATA[images/clients_13.gif]]></image>
</item>
<item>
<image><![CDATA[images/clients_14.gif]]></image>
</item>
<item>
<image><![CDATA[images/clients_15.gif]]></image>
</item>
<footer><![CDATA[copyright evolve entertainment and marketing solutions, 2009]]></footer>
</clients>
PHP代碼:
if(!empty($_FILES["logo"]["name"]))
{
$handle = new Upload($_FILES["logo"]);
$imgId = uniqid();
if ($handle->uploaded)
{
$handle->file_name_body_pre = $imgId;
$handle->image_resize = false;
$handle->Process(ROOT_PATH.'images/');
$handle->processed;
}
$imgName = $imgId.$_FILES["logo"]['name'];
$parent_path = "//main";
$next_path = "//main/clients/footer";
$xpath = new DomXPath($doc);
$parent = $xpath->query($parent_path);
$next = $xpath->query($next_path);
$imageNode = $doc->createElement('image');
$cdata=$doc->createCDATASection($imgName);
$imageNode = $imageNode->appendChild($cdata);
//$parent->item(0)->insertBefore($imageNode, $next->item(0));
$section = $doc->insertBefore($imageNode,$next->item(0));
$doc->save(XML_PATH.'clients.xml');
,我想無論是之前的頁腳或在頂子節點添加新節點。當我試圖上面的代碼它充當一個錯誤:未捕獲的異常「拋出:DOMException」與消息「未找到錯誤」
你如何定義'$ doc'? – hohner 2013-02-16 12:33:17
$ doc = new DOMDocument(); $ doc-> load(XML_PATH.'clients.xml'); – Solvonix 2013-02-16 15:35:16
什麼行會拋出此錯誤?這行號碼上有什麼PHP代碼? – hohner 2013-02-16 15:55:11