# XML Export Automatisch aus MYSQL



## cris-the-best (9. Oktober 2007)

Hallo liebe Gemeinde,

ich hab ein DB XML Flash Problem.
eine Einfache link liste Selbspflegbar in Flash.

zu 90 % geht es aber:

1.) in die DB kann ich rein schreiben alles super

2.) eine xml ohne Probleme importiert in Flash.

3.) nur wie bekomme ich aus der DB eine XML raus

ok phpmyadmin auf export dann xml super da hab ich die Datei auf meinem Desktop oder asl quelltext angezeigt. aber wie kann ich ein XML auf den Server schreiben lassen

Danke für jegliche tipps..

p.s.: ich hab mir auch schon die Fingerwundgegooglt aber ohne großen erfolg


----------



## cris-the-best (10. Oktober 2007)

Geht es überhaupt per PHP eine Datei zu erzeugen und auf den Server zu sichern?


----------



## Kahmoon (10. Oktober 2007)

Klar kann man via PHP jegliche Ausgabe auch in XML ausgeben. Ist auch nicht schwer. Dazu solltest Du Dir das mal durchlesen. http://de.php.net/simplexml


----------



## cris-the-best (10. Oktober 2007)

Ja verstanden funktioniert!!
ABER:

Ich will die Datenbank auslesen und daraus ein xml erstellen?!
keinen schimmer...

Kenn den keiner die Export funktion bei phpmyadmin?
genau so wie der die datei ausspuckt..

Brauch ich das auch nur das ich das nicht von hand mache sonder das das alles auf dem Server Passiert..


----------



## Michael Engel (10. Oktober 2007)

Du gibst deinem Flash-film als quelle einfach eine .php datei statt einer XML:


```
<?
header('Content-Type: text/xml');

$xml = new SimpleXMLElement("<?xml version='1.0' standalone='yes'?><Database/>");
$sql = 'SELECT * FROM `table`';
$res = mysql_query($sql);
while ($data = mysql_fetch_assoc($res)) {
    $row = $xml->addChild('row');
    foreach ($data as $key => $val){
        $row->addChild($key,utf8_encode($val));
    }

}
echo $xml->asXML();
?>
```

Alternativ kannst du es auch abspeichern und bei jeder änderung das xml neu generieren lassen. Da man nicht weiß wie oft sich der Inhalt ändert, weis man nicht welche Lösung für dich die bessere ist ,)


----------



## cris-the-best (10. Oktober 2007)

mhh ok.

ich habe jetzt erst mal eine html ansicht gebastelt:


```
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
		<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
		<title>links</title>
	</head>
	<body bgcolor="#ffffff">
				<?php
				
include 'config.inc.php'; 
mysql_connect($host, $user, $pass);
mysql_select_db($db);

$sql = "SELECT * FROM flash";
if (!$res_id = mysql_query($sql))
die ('fehler! SQL BEFEHL IST FALSCH.');

while ($ausgabe = mysql_fetch_array($res_id))


{
   echo "<a href=\"".$ausgabe['link']."\"target=\"_blank\">".$ausgabe['name']."</a>"."<br>";
}
?>
	</body>
</html>
```

und dort list er einwand frei aus

hier mein code für die Temporäre XML Datei:


```
<?php
		
		header('Content-Type: text/xml');
				
include 'config.inc.php'; 
mysql_connect($host, $user, $pass);
mysql_select_db($db);

$xml = new SimpleXMLElement("<?xml version='1.0' standalone='yes'?><Database/>");
$sql = "SELECT * FROM flash";
if (!$res_id = mysql_query($sql))
die ('fehler! SQL BEFEHL IST FALSCH.');

while ($data = mysql_fetch_assoc($res)) {
    $row = $xml->addChild('row');
    foreach ($data as $key => $val){
        $row->addChild($key,utf8_encode($val));
    }

}

{
  echo $xml->asXML();
}
?>
```

Leider kommt dort 

Fatal error: Cannot instantiate non-existent class: simplexmlelement in /homepages/31/d106606324/htdocs/busch_4/links_auslesen.php on line 9

also mit 

$xml = new SimpleXMLElement("<?xml version='1.0' standalone='yes'?><Database/>");

Stimmt etwas nicht aber was?


----------

