xml feeds
Tumbler
Posts: 323
Hi,
I'm using Mikes HTTPServerMinimal.
Is it possible to make a request to a news server (example: http://asp.hbvl.be/syndicationservices/artfeedservice.svc/rss/mostrecent/binnenland )
and get the feeds into the spinneret memory?
if yes, where can i find the response ?
I'm using Mikes HTTPServerMinimal.
Is it possible to make a request to a news server (example: http://asp.hbvl.be/syndicationservices/artfeedservice.svc/rss/mostrecent/binnenland )
and get the feeds into the spinneret memory?
if yes, where can i find the response ?

Comments
I make a call (every 10 seconds) to my website (php script) to get the' Now On Air- song' from studio brussel (www.stubru.be)
This works fine, but sometimes in the response i found a string 'id browser bug'
Where is this comefrom? i can't find it in the spin files, so i think its comming from stubru?
php script: http://www.tumbler.be/spinneret/noa.php?id=1
<?php error_reporting(0); $id=''; if (isset($_GET['id']) && is_numeric($_GET['id'])){ $id=$_GET['id']; if(($id >-1) && ($id <3)){ // id=0 : previous song // id=1 : now playing // id=2 : next song $array = xml2array(file_get_contents('http://internetradio.vrt.be/internetradio_master/productiesysteem2/song_noa/noa_41.xml')); echo strip_tags(strtoupper($array['noa']['item'][$id]['title']['titlename'])).' - '; echo strip_tags(strtoupper($array['noa']['item'][$id]['artist']['artistname'])); } else echo 'INVALID ID'; } else echo 'NO ID FOUND'; function xml2array($contents, $get_attributes=1, $priority = 'tag') { if(!$contents) return array(); if(!function_exists('xml_parser_create')) { return array(); } $parser = xml_parser_create(''); xml_parser_set_option($parser, XML_OPTION_TARGET_ENCODING, "UTF-8"); xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0); xml_parser_set_option($parser, XML_OPTION_SKIP_WHITE, 1); xml_parse_into_struct($parser, trim($contents), $xml_values); xml_parser_free($parser); if(!$xml_values) return; $xml_array = array(); $parents = array(); $opened_tags = array(); $arr = array(); $current = &$xml_array; $repeated_tag_index = array(); foreach($xml_values as $data) { unset($attributes,$value); extract($data); $result = array(); $attributes_data = array(); if(isset($value)) { if($priority == 'tag') $result = $value; else $result['value'] = $value; } if(isset($attributes) and $get_attributes) { foreach($attributes as $attr => $val) { if($priority == 'tag') $attributes_data[$attr] = $val; else $result['attr'][$attr] = $val; } } if($type == "open") { $parent[$level-1] = &$current; if(!is_array($current) or (!in_array($tag, array_keys($current)))) { $current[$tag] = $result; if($attributes_data) $current[$tag. '_attr'] = $attributes_data; $repeated_tag_index[$tag.'_'.$level] = 1; $current = &$current[$tag]; } else { if(isset($current[$tag][0])) { $current[$tag][$repeated_tag_index[$tag.'_'.$level]] = $result; $repeated_tag_index[$tag.'_'.$level]++; } else { $current[$tag] = array($current[$tag],$result); $repeated_tag_index[$tag.'_'.$level] = 2; if(isset($current[$tag.'_attr'])) { $current[$tag]['0_attr'] = $current[$tag.'_attr']; unset($current[$tag.'_attr']); } } $last_item_index = $repeated_tag_index[$tag.'_'.$level]-1; $current = &$current[$tag][$last_item_index]; } } elseif($type == "complete") { if(!isset($current[$tag])) { $current[$tag] = $result; $repeated_tag_index[$tag.'_'.$level] = 1; if($priority == 'tag' and $attributes_data) $current[$tag. '_attr'] = $attributes_data; } else { if(isset($current[$tag][0]) and is_array($current[$tag])) { $current[$tag][$repeated_tag_index[$tag.'_'.$level]] = $result; if($priority == 'tag' and $get_attributes and $attributes_data) { $current[$tag][$repeated_tag_index[$tag.'_'.$level] . '_attr'] = $attributes_data; } $repeated_tag_index[$tag.'_'.$level]++; } else { $current[$tag] = array($current[$tag],$result); $repeated_tag_index[$tag.'_'.$level] = 1; if($priority == 'tag' and $get_attributes) { if(isset($current[$tag.'_attr'])) { $current[$tag]['0_attr'] = $current[$tag.'_attr']; unset($current[$tag.'_attr']); } if($attributes_data) { $current[$tag][$repeated_tag_index[$tag.'_'.$level] . '_attr'] = $attributes_data; } } $repeated_tag_index[$tag.'_'.$level]++; } } } elseif($type == 'close') { $current = &$parent[$level-1]; } } return($xml_array); } ?>