xml export problem

Tags:    xml mysql php

<< < 12 > >>
Hej
Sidder og prøver at tage data fra et xml feed to indsætter det i en database.

Det kører fint nok, eneste problem jeg har er at nogle af elementerne i xml feedet, har et id som <event eventid=78474> men de andre kun har selve tagget, dem uden id kan jeg fint hente, men hvordan får jeg fat i selve det id for det tag?

Xml feedet bliver kørt igennem via en foreach løkke

Fold kodeboks ind/udPHP kode 


Xml feedet er bygges således

Fold kodeboks ind/udXML kode 




Indlæg senest redigeret d. 25.09.2011 18:58 af Bruger #16445
12 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 1 karma
Sorter efter stemmer Sorter efter dato
prøv det her så:
Fold kodeboks ind/udPHP kode 




Nu er det meget længe siden jeg har rodet med XML i PHP, men hvis jeg ikke husker helt forkert kan du bruge:
$elm->attributes();

Fold kodeboks ind/udPHP kode 


edit:
glemte et root element i xml'en



Indlæg senest redigeret d. 25.09.2011 19:48 af Bruger #3427
Det ser ikke helt ud til at virke, det indsætter bare en tom post i databasen som det første og alt andet efterfølgende, uden at hente id'et



Ser ud til du bruger SimpleXML. Dokumentationen på php.net fortæller dig det: http://dk2.php.net/manual/en/simplexml.examples-basic.php se eksempel #5.

Men du bruger array indeksering: $event['eventid']



har også glemt at indsætte et root element i koden, prøv igen nu :)



Kenneth: Det hjælper ikke da jeg allerede har den med da jeg bare tester på det "rigtige" xml feed.

Søren: Prøver at lege med det selvom php.net ikke er helt pædagogisk nok til mig ;)



prøv lige at skriv, inde i den foreach løkke.

Fold kodeboks ind/udPHP kode 


hvad skriver den?



den skriver:

Fold kodeboks ind/udPHP kode 


hvilket er langt fra de data der er i det <event></event>



hm, den skulle da gerne have haft et array "attributes" med i den udskrift.

har du prøvet at skrive din XML sådan her:
Fold kodeboks ind/udXML kode 




Kan ikke ændre i xml'en da det er et eksternt.

Men når jeg udskriver hvad den henter ind via simplexml_load_file, så får jeg dette

Fold kodeboks ind/udPHP kode 




<< < 12 > >>
t