Jump to content

[SOLVED] Feeds and PHP


timmah1

Recommended Posts

Can somebody tell me why this is not parsing the feed? Or showing anything for that matter??

 

<?php

class RSSParser {

var $insideitem = false;
var $tag = "";
var $title = "";
var $description = "";
var $link = "";

function startElement($parser, $tagName, $attrs) {
	if ($this->insideitem) {
		$this->tag = $tagName;
	} elseif ($tagName == "ITEM") {
		$this->insideitem = true;
	}
}

function endElement($parser, $tagName) {
	if ($tagName == "ITEM") {
		printf("<dt><b><a href='%s'>%s</a></b></dt>",
			trim($this->link),htmlspecialchars(trim($this->title)));
		printf("<dd>%s</dd>",htmlspecialchars(trim($this->description)));
		$this->title = "";
		$this->description = "";
		$this->link = "";
		$this->insideitem = false;
	}
}

function characterData($parser, $data) {
	if ($this->insideitem) {
	switch ($this->tag) {
		case "TITLE":
		$this->title .= $data;
		break;
		case "DESCRIPTION":
		$this->description .= $data;
		break;
		case "LINK":
		$this->link .= $data;
		break;
	}
	}
}
}

$xml_parser = xml_parser_create();
$rss_parser = new RSSParser();
xml_set_object($xml_parser,&$rss_parser);
xml_set_element_handler($xml_parser, "startElement", "endElement");
xml_set_character_data_handler($xml_parser, "characterData");
$fp = fopen("http://www.novafantasysports.com/xml/bbfpbasketballplayernews/node_feed/?User=bbfreepicks_nbaplayernews&pw=bbfpFFBP","r")
or die("Error reading RSS data.");
while ($data = fread($fp, 4096))
xml_parse($xml_parser, $data, feof($fp))
	or die(sprintf("XML error: %s at line %d", 
		xml_error_string(xml_get_error_code($xml_parser)), 
		xml_get_current_line_number($xml_parser)));
fclose($fp);
xml_parser_free($xml_parser);

?>

 

Thanks in advance

Link to comment
https://forums.phpfreaks.com/topic/168536-solved-feeds-and-php/
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.