22. juni 2009 - 19:32
Der er
3 kommentarer
skriv til xml fra php, simpel
Hejsa
Error writing to file, det er hvad jeg fra denne kode:
include("include/conn.php");
$sql = mysql_query("SELECT * FROM tblImg where b_mapID=".$_REQUEST["m_id"]) or die("Mysql fejl");
$songs_final = mysql_fetch_array($sql);
$write_string = "<?xml version='1.0' encoding='UTF-8' ?><gallery cellDimension='800' columns='4' zoomOutPerc='15' zoomInPerc='100' frameWidth='20' frameColor='0xFFFFFF' captionColor='0xFFFFFF' enableRightClickOpen='true' >";
foreach($songs_final as $song){
$write_string .= "<image>";
$write_string .= "<url>images/gallery/".$song['b_navn']."</url>";
$write_string .= "</image>";
}
$write_string .= "</gallery>";
$fp = fopen("gallery.xml", "w+");
fwrite($fp, $write_string) or die("Error writing to file");
fclose($fp);
Alstå jeg fandt denne kode, ser ud til at være bedre end den jeg har. men kan stadig ikke skrive til filen:
<?php
$header = "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n\n";
$nodeStart = "<gallery cellDimension='800' columns='4' zoomOutPerc='15' zoomInPerc='100' frameWidth='20' frameColor='0xFFFFFF' captionColor='0xFFFFFF' enableRightClickOpen='true' >\n";
$nodeEnd = "</gallery>\n";
function write_beg($filename, $header, $nodeStart, $data, $nodeEnd)
{
//Imports old data
//Imports old data
$handle = fopen($filename, "r");
$old_content = fread($handle, filesize ($filename));
$f[] = "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>";
$f[] = "<gallery cellDimension='800' columns='4' zoomOutPerc='15' zoomInPerc='100' frameWidth='20' frameColor='0xFFFFFF' captionColor='0xFFFFFF' enableRightClickOpen='true' >";
$f[] = "</gallery>";
foreach($f as $key => $value)
{
$old_content = trim(str_replace($value, "", $old_content));
}
fclose($handle);
//Sets up new data
$final_content = $header.$nodeStart.$data.$nodeEnd.$old_content;
//Writes new data
$handle2 = fopen($filename, "w");
$finalwrite = fwrite($handle2, $final_content);
fclose($handle2);
}
include("include/conn.php");
$sql = mysql_query("SELECT * FROM tblImg where b_mapID=".$_REQUEST["m_id"]) or die("Mysql fejl");
while($title = mysql_fetch_array($sql)){
$filename = "gallery.xml"; // File which holds all data
$data = "<image>\n<url>images/gallery/".$title["b_navn"]."</url>\n</image>\n";
}
write_beg($filename, $header, $nodeStart, $data, $nodeEnd);
?>