zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Serveradministration und serverseitige Scripte
Seite neu laden XML-Import mit PHP

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 20.11.2017, 14:35
Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 27.04.2005
Beiträge: 68
Fanello befindet sich auf einem aufstrebenden Ast
Standard XML-Import mit PHP

Liebe XHTMLForum-Community

Ich komme mit meinem XML-Import in PHP nicht ganz weiter...

PHP-Code:
$xml = <<<EOD
<iweb_events:eventsMessage xmlns:iweb_general=“http://www.i-web.ch/schema/IwebGeneral/1” xmlns:iweb_events=“http://www.i-web.ch/schema/IwebEvents/1" xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”>
   <iweb_events:organizer>
     <iweb_general:name><![CDATA[Restaurant Egelmoos]]></iweb_general:name>
     <iweb_general:contact><![CDATA[T: +41 (0)71 414 34 34]]></iweb_general:contact>
     <iweb_general:email>apz-sekretariat@amriswil.ch</iweb_general:email>
   </iweb_events:organizer>
   <iweb_events:organizer>
     <iweb_general:name><![CDATA[Gemeinn&uuml;tziger Frauenverein]]></iweb_general:name>
     <iweb_general:contact><![CDATA[Frau Manuela Tschopp, Tel. 071 410 01 17]]></iweb_general:contact>
     <iweb_general:email>manuelatschopp@bluewin.ch</iweb_general:email>
     <iweb_general:website><![CDATA[http://www.tgf-frauenverein.ch]]></iweb_general:website>
   </iweb_events:organizer>
</iweb_events:eventsMessage>
EOD;

$sxe = new SimpleXMLElement($xml);

$sxe->registerXPathNamespace(‘e’‘http://www.i-web.ch/schema/IwebGeneral/1’);
$result $sxe->xpath(//e:name’);

foreach ($result as $name) {
 echo 
$name <br>;

In diesem Beispiel wird mir zwar der Name ausgegeben; jedoch ist mir nicht ganz klar, wie ich die anderen Objekte holen kann (contact, email, website) bzw. ist mir nicht ganz klar, wie ichdiese in die foreach-Schleife bekomme. Hat jemand vielleicht einen Tipp?
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 21.11.2017, 09:35
Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 27.04.2005
Beiträge: 68
Fanello befindet sich auf einem aufstrebenden Ast
Standard

PHP-Code:
$sxe = new SimpleXMLElement($xml);

$sxe->registerXPathNamespace('e''http://www.i-web.ch/schema/IwebEvents/1');
$result $sxe->xpath('//e:organizer');

foreach (
$result as $organizer) {
echo 
'Name: ' $organizer->name '<br>';
echo 
'Contact: ' $organizer->contact '<br>';
echo 
'Email: ' $organizer->email '<br>';

Nun zählt es zwar richtig durch, es bringt mir aber nicht die eigentliche Ausgabe:
Name:
Contact:
Email:
Name:
Contact:
Email:

EDIT:
Noch einen Schritt weiter...

PHP-Code:
$sxe = new SimpleXMLElement($xml);

$sxe->registerXPathNamespace('e''http://www.i-web.ch/schema/IwebEvents/1');
$result $sxe->xpath('//e:organizer');
$result2 $sxe->xpath('//e:location');


foreach (
$result as $organizer) {
  
$o $organizer->children('iweb_general'true);
  echo 
'Name: ' $o->name '<br>';
  echo 
'Contact: ' $o->contact '<br>';
  echo 
PHP_EOL;
}
foreach (
$result2 as $location) {
  
$a $location->children('iweb_general'true);
  echo 
'Lokalität: ' $a->locality '<br>';
  echo 
PHP_EOL;    

Jetzt habe ich den gewünschten Inhalt in der Ausgabe, logischerweise habe ich aber zwei foreach, darum natürlich auch zwei Blöcke:

Name
Contact
Name
Contact

Lokalität
Lokalität

Ich müsste es aber so haben:
Name
Contact
Lokalität
Name
Contact
Lokalität

Kann ich die foreach irgendwie kombinieren?

Geändert von Fanello (21.11.2017 um 11:34 Uhr)
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 13.02.2018, 08:24
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 18.06.2007
Ort: Verden
Beiträge: 405
chorn wird schon bald berühmt werden
Standard

Ich grabe den Thread hier mal aus...

"location" finde ich nicht im Beispiel-XML, liegt aber dem XPath nach zu urteilen auf der gleichen Ebene. Dann müsste man erstmal wissen, in welcher Beziehung location zu organizer steht.
Mit Zitat antworten
Antwort

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Mit PHP in XML einfügen dows Serveradministration und serverseitige Scripte 9 10.03.2010 13:03
PHP Code in XML Datei mastermartin Serveradministration und serverseitige Scripte 5 04.12.2008 19:09
Dateien auslagern - Include und PHP ArcVieh Serveradministration und serverseitige Scripte 17 27.03.2008 19:09
XML in XML einbinden (serverseitig mit PHP) X-User Serveradministration und serverseitige Scripte 6 23.12.2006 21:13
XML samt Untertags durch PHP ausgeben webazubi (X)HTML 0 21.06.2006 20:13


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:11 Uhr.