Example Feed Insert witty or insightful remark here http://example.org/ Sat, 13 Dec 2003 18:30:02 GMT johndoe@example.com (John Doe) Atom-Powered Robots Run Amok http://example.org/2003/12/13/atom03 urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a Sat, 13 Dec 2003 18:30:02 GMT Some text. */ include 'multisite.php'; require_once ('functions.php'); require_once ('database.php'); //die (BTW); //echo $_GET['host']; // name wordt doorgegeven via een .htaccess rewrite if(isset($_GET['name'])) { //die ($_GET['name']); $name = s_sstr($_GET['name']); switch($name) { case 'edi/datop.nl-googlemerchant/datop-googlemerchant': $name = $name.'.xml'; $fp = fopen($name, 'r'); fpassthru($fp); exit; case 'edi/netwerkwinkel.com-googlemerchant/netwerkwinkel-googlemerchant': $name = $name.'.xml'; $fp = fopen($name, 'r'); fpassthru($fp); exit; case 'sitemap': // open the file in a binary mode $name = '.'.SHOPMAP.'sitemap.xml'; $fp = fopen($name, 'r'); // send the right headers //header("Content-Type: image/png"); //header("Content-Length: " . filesize($name)); // dump the picture and stop the script fpassthru($fp); exit; // include ('.'.SHOPMAP.'sitemap.xml'); break; case 'koopkeus': require ('xml/koopkeus.php'); break; default: // zit er een underscore in de naam? if (strpos($name,'_')===false) godie('verkeerde url syntax'); else { // ja, dan is het mogelijk een geldige aanvraag voor gegevens. $request = explode('_',$name); // controleer of het maar 1 underscore is if (count($request)!=2) { godie('Ongeldig aantal parameters'); } // zit er een streepje in de naam? if (strpos($name,'-')!==false) { // ja, dan een lijst met kolomnamen maken $columns=explode('-',strtoupper($request[1])); } // ookal is er geen streepje, toch een array maken else $columns=array(strtoupper($request[1])); $cols=array(); foreach ($columns as $v) { // doorloop de kolommen // wat wordt er gevraagd? de eerste parameter is het type aanvraag switch ($request[0]) { case 'singleproduct': require('xml/singleproduct.php'); break; case 'producten': require('xml/productfeed.php'); $array=sql2arr($cols,$columns,$table); break; case 'merk': require('xml/merkfeed.php'); $array=sql2arr($cols,$columns,$table); break; case 'randomproduct': if ((s_num($request[1]))&&($request[1]<25)&&($request[1]>0))require ('xml/randomproductfeed.php'); else godie('Ongeldige aanvraag parameter'); break; case 'catproduct': if (s_num($request[1])) require('xml/catproduct.php'); else godie('Ongeldige aanvraag parameter'); break; case 'manproduct': if (s_num($request[1])) require('xml/manproduct.php'); else godie('Ongeldige aanvraag parameter'); break; case 'split': if ($request[1]!="") require('xml/split.php'); else godie('Ongeldige aanvraag parameter'); break; case 'plist': if (s_num($request[1])) require('xml/plist.php'); else godie('Ongeldige aanvraag parameter'); break; case 'pdinfo': require('xml/pdinfo.php'); break; case 'infopage': require('xml/infopage.php'); break; case 'networksites': require('xml/networksites.php'); break; default: godie('Missing parameter');//.'
R1='.$request[0].'
R2='.$request[1]); } } } } if (!$noaction) { if (count($columns)<1) godie('geen gegevens'); // die ('
'.print_r($array).'
'); $data=''."\n"; if (!$nodtd) { $data.=''."\n"; // de ster houd in dat een element afwezig mag zijn en vaker voor mag komen met een plus MOET hij er zijn, maar mag hij vaker voorkomen. Vraagteken is 1 of geen $data.='1) $data.=','; $i--; } $data.=')>'."\n"; foreach ($columns as $v) $data.=''."\n"; $data.=']>'."\n"; } $data.=''."\n"; foreach($array as $ak=>$av) { $data.=''."\n"; foreach($av as $k=>$v) { $data.=' <'.$k.'>'."\n".' '.htmlspecialchars(utf8_encode($v))."\n".' '."\n"; } $data.=''."\n"; } $data.=''."\n"; echo $data; } } else godie(); function sql2arr($cols,$columns,$table) { global $dbConn; if ((count($cols)>0)&&(isset($table))) { // controleer of er meer dan 1 kolom is, en of er een tabel is ingesteld $sql = 'select '; $i = count($cols); foreach ($cols as $v) { $sql.='`'.$v.'`'; if ($i>1) $sql.=', '; $i--; } $sql.=' from `'.$table.'`'; if ($result=(mysqli_query($dbConn,$sql))) { $array=array(); while($row=mysqli_fetch_assoc($result)) { $i=0; $line=array(); foreach ($row as $v) { $line[$columns[$i]]=htmlspecialchars($v); $i++; } $array[]=$line; } } } return($array); } function godie($reason='Geen reden opgegeven') { // is er geen name doorgegeven, geef dan wat informatie over de website die (' '.SHOPNAME.' '.LONGSHOPURLSLASH.' Ongeldige XML aanvraag ontvangen. '.$reason.' '); } ?>