PHP – MySQL Export in XML

MySQL Tabelle in ein XML Dokument exportieren/konvertieren

In diesem Beispiel wird gezeigt, wie Daten aus einer MySQL-Tabelle in ein XML-Dokument umgewandelt werden. Der Quellcode beginnt mit den Anmeldedaten am Datenbankserver. Beim Aufruf des Scriptes werden zuerst alle verfügbaren Tabellen in einer Combobox angezeigt. Mit einem Klick auf Senden werden die Rows aus der Tabelle direkt in ein neu erzeugtes XML-File geschrieben.

Der Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<?php
$dbHost = "localhost";
$dbUser = "root";
$dbPassword = "";
$dbName = 'XMLDB';
 
 
 
if (!mysql_connect($dbHost, $dbUser, $dbPassword)) {
    echo 'Keine Verbindung zur Datenbank möglich';
    exit;
}
 
 
if(isset($_POST["table"])){
 
    // Alle Spalten der ausgewählten Tabelle in ein XML-Doc schreiben
 
    header("Content-Type: application/xml");
 
    $dbtable = $_POST["table"];
 
    mysql_select_db($dbName);
 
    $result = mysql_query("SELECT * FROM $dbtable");
 
    $XMLDoc = new SimpleXMLElement("<?xml version='1.0' standalone='yes'?><$dbtable></$dbtable>");
 
    while($dbrow = mysql_fetch_object($result))
    {
        $xmlrow = $XMLDoc->addChild("row");
 
        foreach($dbrow as $Spalte => $Wert)
            $xmlrow->$Spalte = $Wert;
    }
 
    echo $XMLDoc->asXML();
 
} else {
 
    // Alle Tabellen in einem Auswahldialog auflisten
 
    $result = mysql_list_tables($dbName);
 
    if (!$result) {
        echo "DB Fehler, Tabellen können nicht angezeigt werden\n";
        echo 'MySQL Fehler: ' . mysql_error();
        exit;
    }
 
    echo '<h2>Tabelle ausw&auml;hlen</h2>
          <form method="post">
          <select name="table">';
 
    while ($row = mysql_fetch_row($result)) {
        echo '<option value="',$row[0],'">',$row[0],'</option>';
    }
 
    echo '</select>
          <input type="submit" name="Submit" value="Senden">
          </form>';
 
}
 
mysql_free_result($result);
?>

Ein Gedanke zu „PHP – MySQL Export in XML

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

* Copy This Password *

* Type Or Paste Password Here *

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>