Goedenavond allemaal,
allereerst wil ik jullie fijne feestdagen toe wensen en hoop ik dat jullie mooie kerstdagen hebben gehad.
Ik ben voor een klant van me even bezig met het verwerken van een tradetracker xml feed.
Zie dit voorbeeld:
Nu wil ik de gegevens per product opslaan in de mysql database. Alleen hoe kan ik de velden brand, ean, deliveryTime, extraInfo en deliveryCosts weergeven? Dit is mijn import code:Code:<product> <productID>7017206</productID> <name>xxx</name> <price currency="EUR">24.49</price> <productURL>xxx</productURL> <imageURL>xxx</imageURL> <description><![CDATA[xxx]]></description> <categories> <category path="hardware">hardware</category> </categories> <additional> <field name="brand">Braun</field> <field name="EAN">4210201584667</field> <field name="deliveryTime">1 dag</field> <field name="extraInfo"></field> <field name="deliveryCosts">2.30</field> </additional> </product>
Alvast bedankt voor jullie reacties zo op deze late avond!PHP Code:
// Connect with the database
$this->connectDatabase();
// Get the content of the productfeed
$sXml = file_get_contents($sUrl);
// Place the content in strings
$oXml = simplexml_load_string($sXml);
// Start with counting
$sCount = 0;
foreach($oXml->product as $oProduct) {
// Update the counter plus one
$sCount ++;
$this->addProduct(
$sCompany,
(string)$oProduct->name,
(string)$oProduct->price,
(string)$oProduct->productURL,
(string)$oProduct->imageURL,
(string)$oProduct->description
);
}
// How much products are added?
echo 'Import voltooid, er zijn '.$sCount.' producten toegevoegd.';
Groet uit Brabant,
Diederik van Andel
- XML feed uitlezen
-
26-12-2010, 22:07 #1
- Berichten
- 400
- Lid sinds
- 15 Jaar
XML feed uitlezen
-
-
26-12-2010, 22:29 #2
- Berichten
- 613
- Lid sinds
- 19 Jaar
Re: XML feed uitlezen
PHP Code:$oProduct -> additional -> field[0]
PHP Code:foreach($oProduct -> additional as $field){echo $field['brand']; }
-
26-12-2010, 22:47 #3
- Berichten
- 400
- Lid sinds
- 15 Jaar
Re: XML feed uitlezen
thanks, je hebt me lekker op gang geholpen!
Uit eindelijk heb ik het zo opgelost:
PHP Code:foreach($oProduct->additional->field as $oField) {
// Get the name of this extra info field
$sAttribute = (string)$oField->attributes()->name;
if($sAttribute == 'brand') { $sBrand = (string)$oField; }
if($sAttribute == 'EAN') { $sEan = (string)$oField; }
if($sAttribute == 'deliveryTime') { $sDeliveryTime = (string)$oField; }
if($sAttribute == 'extraInfo') { $sExtraInfo = (string)$oField; }
if($sAttribute == 'deliveryCosts') { $sDeliveryCosts = (string)$oField; }
// Add new brand
if(!empty($sBrand)) {
$this->addBrand($sBrand);
}
}
Diederik van Andel
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic