Home | Scripts | Tutorials | Books | Hosting | Forums | Links|

Navigation:

Home
Source code
Tutorials
RSS feeds
Articles
Wordpress plugins
Blog
Books
Software
Downloads
Hosting
manuals
Script directory
Training
Our Links






 
 

SPONSORS



 
 

Get the top products from Linux Central

Here is the code

<?php
if( ! ($fp = fopen("http://linuxcentral.com/backend/lcbestns.rdf" , "r" )) )
die("Couldn't open xml file!");
$item_counter = 0;
$in_item_tag = 0;
$lintop_current_tag_state = '';
$lintop_headline_data = array();
function startElementHandler( $parser, $element_name, $element_attribs )
{
global $item_counter;
global $in_item_tag;
global $lintop_current_tag_state;
global $lintop_headline_data;
if( $element_name == "ITEM" )
{
$in_item_tag = 1;
}
if( $in_item_tag == 1 )
{
$lintop_current_tag_state = $element_name;
}
else
{
$lintop_current_tag_state = '';
}
}
function endElementHandler( $parser, $element_name )
{
global $item_counter;
global $in_item_tag;
global $lintop_current_tag_state;
global $lintop_headline_data;
$lintop_current_tag_state = '';
if( $element_name == "ITEM" )
{
$item_counter++;
$in_item_tag = 0;
}
}
function characterDataHandler( $parser , $data )
{
global $item_counter;
global $in_item_tag;
global $lintop_current_tag_state;
global $lintop_headline_data;
if( $lintop_current_tag_state == '' || $in_item_tag == 0 )
return;
if( $lintop_current_tag_state == "TITLE" ) {
$lintop_headline_data[$item_counter]["title"] = $data;
}
if( $lintop_current_tag_state == "LINK" ) {
$lintop_headline_data[$item_counter]["link"] = $data;
}

}
if( !($xml_parser = xml_parser_create()) )
die("Couldn't create XML parser!");

xml_set_element_handler($xml_parser, "startElementHandler", "endElementHandler");
xml_set_character_data_handler( $xml_parser , "characterDataHandler" );
while( $data = fread($fp, 4096) )
{
if( !xml_parse($xml_parser, $data, feof($fp)) )
{
break; // get out of while loop if we're done with the file
}
}
xml_parser_free($xml_parser);
?>
<HTML>
<HEAD>
<TITLE>linuxcentral top products</TITLE>
</HEAD>

<BODY BGCOLOR="#ffffff">

<H3>Linux central top products</H3>
<BR>
<?php

for( $i=0 ; $i < $item_counter ; ++$i )
{
printf("<A HREF=\"%s\">%s</a><br>\n" , $lintop_headline_data[$i]["link"] ,
$lintop_headline_data[$i]["title"] );
}

?>

</BODY>
</HTML>

And here is the script in action , linux central top products