$URL
";
$xml=http_get($URL);
//print "$xml";
$Results=xml2array($xml);
//print "
"; //print_r($Results); //print ""; $TotalNumber=$Results[EventSearchResults][0][Details][0][TotalNumber]; $StartNumber=$Results[EventSearchResults][0][Details][0][StartNumber]; $DisplayNumber=$Results[EventSearchResults][0][Details][0][DisplayNumber]; $SearchBaseURL="http://www.craftlister.com/api/v0.1b/sample_EventSearch.php"; $WhereClause=""; search_continue_links($SearchBaseURL,$WhereClause,$TotalNumber,$StartNumber,$DisplayNumber); foreach($Results[EventSearchResults][0][Event] as $Event){ print "
"; print_r($Event); print ""; } search_continue_links($SearchBaseURL,$WhereClause,$TotalNumber,$StartNumber,$DisplayNumber); function http_get($URL){ $URL=str_replace("\"","%34",$URL); $URL=str_replace("\n","",$URL); return `/usr/bin/lynx -source "$URL"`; } function xml2array( $textXml ) { $regExElements = '/<(\w+)([^>]*)>(.*?)<\/\\1>/s'; $regExAttributes = '/(\w+)="([^"]*)"/'; preg_match_all( $regExElements, $textXml, $matchElements ); foreach ( $matchElements[1] as $keyElements=>$valElements ) { if ( $matchElements[2][$keyElements] ) { preg_match_all( $regExAttributes, $matchElements[2][$keyElements], $matchAttributes ); foreach ( $matchAttributes[0] as $keyAttributes=>$valAttributes ) { $arrayAttributes[ $valElements.' attributes' ][$matchAttributes[1][ $keyAttributes ] ] = $matchAttributes[2][ $keyAttributes ]; } } else { $arrayAttributes = null; } if ( preg_match( $regExElements, $matchElements[3][$keyElements]) ) { if ( $arrayAttributes ) { $arrayFinal[ $valElements ][ $valElements.' attributes' ] = $arrayAttributes[ $valElements.' attributes' ]; } $arrayFinal[ $valElements ][] = xml2array( $matchElements[3][$keyElements] ); } else { $arrayFinal[ $valElements ] = $matchElements[3][ $keyElements ]; $arrayFinal = array_merge( $arrayFinal, $arrayAttributes ); } } return $arrayFinal; } function search_continue_links($BaseURL,$WhereClause,$TotalNumber,$StartNumber,$ResultsPerPage){ global $vars; if(!$TotalNumber) return; $ue_WhereClause=rawurlencode($WhereClause); print "Results: "; $gap=""; for($i=0;$i<=$TotalNumber;$i+=$ResultsPerPage){ $Print=false; //first one if($i==0) $Print=true; //last one if($i+$ResultsPerPage+1>$TotalNumber) $Print=true; //ones around current page if($StartNumber>=$i-2*$ResultsPerPage && $StartNumber<=$i+2*$ResultsPerPage) $Print=true; if($Print==true){ $end=$i+$ResultsPerPage; if($end>$TotalNumber) $end=$TotalNumber; $start=$i+1; if($end>=$start){ $URL="$BaseURL?TotalNumber=$TotalNumber&StartNumber=$i&ue_WhereClause=$ue_WhereClause"; if($vars[ContinueLinksURLAddOn]){ $URL .= $vars[ContinueLinksURLAddOn]; } if($StartNumber==$i){ if($start==$end){ if($vars[ContinueLinksMakeCurrentLinkClickable]){ print "[$start]"; }else{ print "[$start]"; } }else{ if($vars[ContinueLinksMakeCurrentLinkClickable]){ print "[$start-$end]"; }else{ print "[$start-$end]"; } } }else{ if($start==$end){ print "[$start]"; }else{ print "[$start-$end]"; } } } $gap="...."; }else{ print $gap; $gap=""; } } print ""; } ?>