Zum Inhalt springen

XML import / verarbeiten

Erstellt am 28. Mai 2009 · 4 Antworten · letzte Antwort am 30. Mai 2009

Tags: Import & Export, Frage

bobbybln ·

Hallo,

ich bekomme von verschiedenen Anbietern XML Links die ich auf meine Seite einbauen kann. Nur stehe ich auf den Schlauch wie ich diese richtig einbinden kann. Es handelt sich hierbei nicht um RSS Feeds. Es sind reine XML-Dateien/Links. Habe auch schon die Extension magpie installiert. Aber ich weiß nicht weiter. Ich habe keine Ahnung was ich damit machen kann. Ein Manual dazu gibt es leider nicht.

Hat jemand vielleicht ein Tipp für mich wie ich vorgehen muß?

Gruß

Bob

meckpo ·

Hallo,

ja: Du musst dir überlegen, wie du die XML-Daten darstellen möchtest und das dann entsprechend in PHP programmieren (lassen).

bobbybln ·

Ja aber fehlt irgendwie der Ansatz. Wozu gibt es denn die Extension magpie? Was machen solche Extension die XML Importieren? Können die nur RSS importieren?
Ich denke ich bin ja nicht der einzige der XML Links importiert.

Gruß

Bob

bobbybln ·

Ein Schritt weiter,

man kann, sofern man PHP5 laufen hat. Mit simpleXml eine XML Datei einlesen.

<?php
$xmlfile='http://www.testdomain.xyz/adressen.xml';
$xml = simplexml_load_file(rawurlencode($xmlfile));

print_r($xml);

Jetzt bekomme ich alles aus der XML Datei angezeigt. Mit Felder etc.

Die XML Datei hat folgende Struktur

-DataSet>
&#8722;
<Data>
<Name>Max</Name>
<Nachname>Muster</Nachname>
<Strasse>Musterweg</Strasse>

</Data>

Wie kann ich nun die Daten ausgeben? mit einfachen echo geht es irgendwie nicht?

Gruß
Bob

meckpo ·

Hallo,

also SimpleXML gibt es schon etwas länger in PHP ... Hier findest du z.B. eine Doku dazu:
http://de2.php.net/manual/de/book.simplexml.php

Wie du jetzt durch deine XML-Datei durchgehen musst wirst du alleine rausfinden müssen.

Zur Ausgabe: Du musst deine PHP-Funktion (die die XML-Datei auslesen soll) ja nun irgendwie in Typo3 einbinden. innerhalb dieser Funktion sammelst du deine Ausgabe in einer Variablen (üblicherweise: $content) und machst am Ende deiner Funktion ein return $content;

Aber erwarte jetzt keine Einführung in PHP etc. - das wirst du dir aus der Doku raussuchen müssen (oder du suchst dir jemanden der sich damit auskennt).