2011-03-18 20 views
0

嘿,所有。我正在嘗試使用php保存XML文件。這裏是我的代碼,連接到數據庫是好的,所有的,我可以使用$ dom-> saveXML(),但保存功能並沒有保存任何東西。 請幫忙。保存爲使用php問題的XML文檔

<? 
$db_selected = mysql_select_db($database, $connection); 
if (!$db_selected) { 
    die ('Can\'t use db : ' . mysql_error()); 
} 

// Select all the rows in the markers table 

$query = "SELECT * FROM Listing_Arnona WHERE 1"; 
$result = mysql_query($query); 
if (!$result) { 
    die('Invalid query: ' . mysql_error()); 
} 



// Iterate through the rows, adding XML nodes for each 

while ($row = @mysql_fetch_assoc($result)){ 
    // ADD TO XML DOCUMENT NODE 
    $node = $dom->createElement("marker"); 
    $newnode = $parnode->appendChild($node); 
    $newnode->setAttribute("Price",$row['Price']); 
    $newnode->setAttribute("PriceS", $row['Price']); 
    $newnode->setAttribute("address", $row['street_name']); 
    $newnode->setAttribute("NumRooms", $row['Room_Num']); 
    $newnode->setAttribute("PROMO", $row['PROMO']); 
} 

$dom->formatOutput = true; 
$test1 = $dom->saveXML(); // put string in test1 
$dom->save('test1.xml'); // save as file 

?> 
+0

你對'test1.xml'有寫入權限嗎?你能夠成功輸出'$ test1'到瀏覽器嗎? – 2011-03-18 02:04:09

+0

'$ dom-> save('test1.xml')'返回什麼?如果它返回「false」,它不能寫入文件(並且很可能這是一個權限問題)。 – Jon 2011-03-18 02:04:31

+0

'不存儲任何東西'?啊,要愛他們雙重否定。它節省了什麼? – 2011-03-18 02:05:33

回答

1

大家指出的問題是寫入權限。我用chmod 777打開一個新文件夾名稱'xml',並將代碼更改爲:

$dom->save('xml/test1.xml'); 

謝謝大家。

+1

不好意思,因爲直言不諱,但*你在發帖之前沒有檢查函數的返回值?無價... http://php.net/manual/en/domdocument.save.php – Jon 2011-03-18 02:18:36