login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Importeer XML feed data naar MYSQL database

Offline Jointjeff - 29/03/2012 16:26 (laatste wijziging 29/03/2012 16:27)
Avatar van JointjeffHTML interesse Beste Sima-leden,

Ik moet voor een website data in een database zetten welke ik moet halen uit een XML feed. Ik heb al het nodige google-werk gedaan, maar ik kom er niet uit.

Stel dat zo'n object in de XML feed er zo uit ziet:

  1. <object>
  2. <objectid>9282</objectid>
  3. <titel>Rush Hour 3</titel>
  4. <jaartal>1998</jaartal>
  5. </object>


Hoe kan ik dan zorgen dat deze informatie bijvoorbeeld in mij table "dvds" gezet wordt?

Ik hoop dat mijn vraag duidelijk is, en daarnaast hoop ik op hulp!

3 antwoorden

Gesponsorde links
Offline GroundZero - 29/03/2012 16:38 (laatste wijziging 29/03/2012 16:40)
Avatar van GroundZero Lid ik doe dit altijd:

  1. if(!$file = new SimpleXMLElement($xml))
  2. {
  3. echo 'UNABLE TO LOAD XML';
  4. }
  5.  
  6. $i = 0;
  7. foreach($file->channel->item as $value)
  8. {
  9. echo $file->channel->item[$i]->title.'<br />'.
  10. $file->channel->item[$i]->description.'<br />'.
  11. $file->channel->item[$i]->link.'<br />'.
  12. $file->channel->item[$i]->guid.'<br />'.
  13. $file->channel->item[$i]->author.'<br />'.
  14. $file->channel->item[$i]->pubDate.'<br /><br />';
  15. $i++;
  16. }


zou bij jou dan denk ik zijn:

  1. <channel>
  2. // ALLEMAAL INFO
  3. // ALLEMAAL INFO
  4. // ALLEMAAL INFO
  5. // ALLEMAAL INFO
  6.  
  7. <object>
  8. <objectid>9282</objectid>
  9. <titel>Rush Hour 3</titel>
  10. <jaartal>1998</jaartal>
  11. </object>
  12.  
  13. <object>
  14. <objectid>123421</objectid>
  15. <titel>Rush Hour 2</titel>
  16. <jaartal>1996</jaartal>
  17. </object>
  18.  
  19. </channel>


en dan weergeven met:

foreach($file->channel->object as $value)
Offline Jointjeff - 29/03/2012 16:53 (laatste wijziging 30/03/2012 10:47)
Avatar van Jointjeff HTML interesse
Citaat:
Fatal error: Uncaught exception 'Exception' with message 'String could not be parsed as XML' in C:xampphtdocsxmlindex.php:5 Stack trace: #0 C:xampphtdocsxmlindex.php(5): SimpleXMLElement->__construct('') #1 {main} thrown in C:xampphtdocsxmlindex.php on line 5


Krijg deze een error met de volgende code:

  1. $xml = simplexml_load_file("voorbeeld.xml");
  2.  
  3. if(!$file = new SimpleXMLElement($xml))
  4. {
  5. echo 'UNABLE TO LOAD XML';
  6. }
  7.  
  8. $i = 0;
  9. foreach($file->channel->item as $value){
  10. echo $file->channel->item[$i]->objectid.'<br />'.
  11. $file->channel->item[$i]->titel.'<br />'.
  12. $file->channel->item[$i]->jaartal.'<br />';
  13. $i++;
  14. }


In ieder geval al bedankt voor je hulp tot zover!

--- ---

Ik ga even iets verder in de details treden. Ik moet namelijk zorgen dat vastgoed objecten worden opgeslagen in een database, en eigenlijk moet dit ook nog binnen de WordPress tabellen gebeuren.

Dit is hoe de XML eruit zal gaan zien:
http://vrds.nl/test.xml

Nog steeds hoop ik hulp!
Offline icemar - 09/04/2012 07:46
Avatar van icemar Lid Ik heb een stukje voor je gemaakt waarje wel mee vooruit kan.

  1. $xml = simplexml_load_file("http://vrds.nl/test.xml");
  2.  
  3.  
  4.  
  5. echo $xml->Object->NVMVestigingNR .'<br />'.
  6. $xml->Object->ObjectCompany.'<br />'.
  7. $xml->Object->ObjectAfdeling.'<br />'.
  8. $xml->Object->ObjectTiaraID.'<br />'.
  9. $xml->Object->ObjectSystemID.'<br />'.
  10. $xml->Object->ObjectCode.'<br />'.
  11. $xml->Object->ObjectDetails->Adres->Nederlands->Straatnaam.'<br />'.
  12. $xml->Object->ObjectDetails->Adres->Nederlands->Huisnummer.'<br />'.
  13. $xml->Object->ObjectDetails->Adres->Nederlands->Postcode.'<br />'.
  14. $xml->Object->ObjectDetails->Adres->Nederlands->Woonplaats.'<br />'.
  15. $xml->Object->ObjectDetails->Adres->Nederlands->Land.'<br />'.
  16. $xml->Object->ObjectDetails->Koop->Prijsvoorvoegsel.'<br />'.
  17. $xml->Object->ObjectDetails->Koop->Koopprijs.'<br />'.
  18. $xml->Object->ObjectDetails->Koop->KoopConditie.'<br />';


Mocht je nog vragen hebben dan hoor ik het graag.
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.331s