Hallo phpers,
Ik ben bezig te proberen XML feeds uit te lezen van een affiliate partner.
Het nadeel is dat deze partner verschillende opbouwen erop na houd van zijn XML. Eigenlijk wil ik uit een database alle velden halen en dan gaan vergelijken met de inhoud van een XML file.
Dit is wat ik nu heb:
<?php
include('config.php');
$xmlDoc = new DOMDocument();
$xmlfeeds = $mysqli->get('SELECT * FROM xmlfeeds');
foreach($xmlfeeds as $xmlfeed)
{
$xmlDoc->load($xmlfeed['url_feed']);
$x=$xmlDoc->getElementsByTagName('product');
foreach($x as $item)
{
//$mysqli->put('REPLACE INTO landen WHERE naam="'..'"');
$item_title = $item->getElementsByTagName($xmlfeed['title']);
$title =
$item_link = $item->getElementsByTagName($xmlfeed['link'])->item(0)->childNodes->item(0)->nodeValue;
//$item_desc = $item->getElementsByTagName($xmlfeed['description'])->item(0)->childNodes->item(0)->nodeValue;
//$acco_type = $item->getElementsByTagName($xmlfeed['acco_type'])->item(0)->childNodes->item(0)->nodeValue;
$acco_name = $item->getElementsByTagName($xmlfeed['acco_name'])->item(0)->childNodes->item(0)->nodeValue;
$img_small = $item->getElementsByTagName($xmlfeed['img_small'])->item(0)->childNodes->item(0)->nodeValue;
foreach($item->getElementsByTagName('field') as $field)
{
if($field->getAttribute('name') == $xmlfeed['country'])
{
$country = $field->nodeValue;
}
if($field->getAttribute('name') == $xmlfeed['regio'])
{
$regio = $field->nodeValue;
}
if($field->getAttribute('name') == $xmlfeed['city'])
{
$city = $field->nodeValue;
}
if($field->getAttribute('name') == $xmlfeed['min_price'])
{
$min_price = $field->nodeValue;
}
if($field->getAttribute('name') == $xmlfeed['img_small'])
{
$img_small = 'test';
}
}
echo $country . '<br />';
echo $regio . '<br />';
echo $city . '<br />';
echo $img_small;
echo '<img src="'.$img_small.'">';
echo '<a href="'.$item_link.'">Vakantie boeken? klik hier...</a><br /><br />';
}
}
?>
Hopelijk kan iemand met verder helpen.
1.469 views