PDA

View Full Version : RSS w/ PHP



Medyman
12-31-2007, 05:30 PM
Hey guys...

So, I'm trying to create a RSS feed (actually, multiple RSS feeds) through PHP & MySQL. This works fine when there is only one table to query.

However, on my homepage, I'm using content from several tables. So, how would I adapt the following scripts to query several MySQL tables (7 to be exact)...


<?
include("feedcreator.class.php");

$rss = new UniversalFeedCreator();
$rss->useCached();
$rss->title = "PHP news";
$rss->description = "daily news from the PHP scripting world";
$rss->link = "http://www.dailyphp.net/news";
$rss->syndicationURL = "http://www.dailyphp.net/".$PHP_SELF;

$image = new FeedImage();
$image->title = "dailyphp.net logo";
$image->url = "http://www.dailyphp.net/images/logo.gif";
$image->link = "http://www.dailyphp.net";
$image->description = "Feed provided by dailyphp.net. Click to visit.";
$rss->image = $image;

// get your news items from somewhere, e.g. your database:
mysql_select_db($dbHost, $dbUser, $dbPass);
$res = mysql_query("SELECT * FROM news ORDER BY newsdate DESC");
while ($data = mysql_fetch_object($res)) {
$item = new FeedItem();
$item->title = $data->title;
$item->link = $data->url;
$item->description = $data->short;
$item->date = $data->newsdate;
$item->source = "http://www.dailyphp.net";
$item->author = "John Doe";

$rss->addItem($item);
}

$rss->saveFeed("RSS1.0", "news/feed.xml");
?>

Leafy
01-02-2008, 08:56 AM
1) Could you explain why you're using multiple tables instead of just 1 to clarify?
2) What's wrong with just copy/pasting the while loop and altering the query?

Medyman
01-02-2008, 04:30 PM
1) Could you explain why you're using multiple tables instead of just 1 to clarify?

The website is a literary journal, seperated into seven different categories. When I was building the site, I made a seperate DB table for each category as there are several subcategories within each that need to be stored in the DB was well.

The homepage pulls from each of these tables to show "featured" entries.



1) Could you explain why you're using multiple tables instead of just 1 to clarify?
2) What's wrong with just copy/pasting the while loop and altering the query?

I'm not sure...maybe nothing. But I'm sure what that entails.

Medyman
01-02-2008, 05:12 PM
Got it, thanks!