Hallo zusammen,
Ich möchte ein XML -> SQL Import Script mit PHP bauen, da ich Daten die ich als XML Datei bekomme in meine Datenbank einlesen möchte. Jetzt habe ich folgenden Code (stark vereinfacht)
Import.php
Musik
Funktionieren tut das soweit ja, also das Ergebnis sieht so aus:
XML_DATA: State of Confusion Kinks 41:29 12,80 DM Strangers in the Night UFO 109:26 29,90 DM
XML_Parser_Handle: Resource id #2
Parse_Handle: Resource id #4
meine Frage jetzt: Wie erreiche ich die einzelnen Tags von XML? Sodass ich mein Mapping auf die SQL DB machen kann.
D.h. wie kann ich meinem Script sagen, dass immer wenn eine neue <cd> kommt, er mir den wert <title> ausgibt? sodass ich dann ganz einfach den wert <title> nehmen kann und insert into ausführen kann!
wär super wenn mir jemand möglichst schnell dabei helfen könnte, vielen Dank im vorraus!
Ich möchte ein XML -> SQL Import Script mit PHP bauen, da ich Daten die ich als XML Datei bekomme in meine Datenbank einlesen möchte. Jetzt habe ich folgenden Code (stark vereinfacht)
Import.php
PHP-Code:
<?
$xml_filename="musik.xml";
$xml_parser_handle = xml_parser_create();
if (!($parse_handle = fopen($xml_filename, 'r'))) {
die("FEHLER: Datei $xml_filename nicht gefunden.");
}
while ($xml_data = fread($parse_handle, 4096))
{
if (!xml_parse($xml_parser_handle, $xml_data, feof($parse_handle)))
{
die(sprintf('XML error: %s at line %d',
xml_error_string(xml_get_error_code($xml_parser_handle)),
xml_get_current_line_number($xml_parser_handle)));
}
echo "XML_DATA: $xml_data<br>";
echo "XML_Parser_Handle: $xml_parser_handle <br>";
echo "Parse_Handle: $parse_handle <br>";
}
xml_parser_free($xml_parser_handle);
?>
Musik
PHP-Code:
<?xml version="1.0"?>
<musik>
<cd>
<titel>State of Confusion</titel>
<band>Kinks</band>
<laenge>41:29</laenge>
<preis>12,80 DM</preis>
</cd>
<cd>
<titel>Strangers in the Night</titel>
<band>UFO</band>
<laenge>109:26</laenge>
<preis>29,90 DM</preis>
</cd>
</musik>
Funktionieren tut das soweit ja, also das Ergebnis sieht so aus:
XML_DATA: State of Confusion Kinks 41:29 12,80 DM Strangers in the Night UFO 109:26 29,90 DM
XML_Parser_Handle: Resource id #2
Parse_Handle: Resource id #4
meine Frage jetzt: Wie erreiche ich die einzelnen Tags von XML? Sodass ich mein Mapping auf die SQL DB machen kann.
D.h. wie kann ich meinem Script sagen, dass immer wenn eine neue <cd> kommt, er mir den wert <title> ausgibt? sodass ich dann ganz einfach den wert <title> nehmen kann und insert into ausführen kann!
wär super wenn mir jemand möglichst schnell dabei helfen könnte, vielen Dank im vorraus!
Kommentar