![]() |
RSS-Feed erzeugen (mit PHP)
Hi,
ich versuche gerade für mein kleines Blogging-System eine RSS-Feed-Ausgabe zu programmieren. Soweit so gut. Ich habe mir den Feed von ![]() Ich habe mir dann mal folgende Datei gebastelt, die den Feed erzeugen sollte:
Code:
Allerdings weigert sich der Firefox partout diese Datei mit Inhalt anzuzeigen. Einen PHP-Fehler konnte ich nicht finden (wurde auch nichts ausgegeben) und ich war eigentlich der Meinung dass der Aufbau auch richtig sein sollte.
<?php
require "global.php"; header('Content-Type: application/rss+xml'); ?> <?xml version="1.0" encoding="ISO-8859-1"?> <rss version="2.0" xmlns:blogChannel="http://backend.userland.com/blogChannelModule"> <channel> <title><?php print BLOG_CAPTION; ?></title> <description><?php print BLOG_SUBTITLE; ?></description> <link><?php print BLOG_URL; ?></link> <lastBuildDate><?php print date("r"); ?></lastBuildDate> <generator><?php print "BlogSystem by CSD-Software"; ?></generator> <language>de</language> <?php $querystring = 'SELECT * FROM ' . TABLE_BLOG . ' ORDER BY timeStamp DESC LIMIT 0,15'; $result = $sql->query($querystring); foreach ($sql->query_data[$result] as $row) { ?> <item> <title><?php print $row['charTitle']; ?></title> <link><?php print BLOG_URL; ?>index.php?showid=<?php print $row['intID']; ?></link> <description><?php print parse_content(htmlentities($row['textContent'])); ?></description> <comments><?php print BLOG_URL; ?>index.php?showid=<?php print $row['intID']; ?></comments> <pubDate><?php print date("r", $row['timeStamp']); ?></pubDate> <guid><?php print BLOG_URL; ?>index.php?showid=<?php print $row['intID']; ?></guid> </item> <?php } ?> </channel> </rss> Hat jemand eine Idee, was ich falsch gemacht haben könnte? Chris |
Re: RSS-Feed erzeugen (mit PHP)
Ich hab das mal so gemacht ... denke aber auch an das Verbinden zur Datenbank!!!
Code:
<?php
#### NEWS_FEED erstellen //Unix-Pfad zur Datei $datei= $_SERVER["DOCUMENT_ROOT"].'/mtb/rss/feed.xml'; $xml = '<?xml version="1.0" encoding="ISO-8859-1"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://my.netscape.com/rdf/simple/0.9/"> <channel> <title>mtb-brandenburg.de RSS+XML Newsfeed - News</title> <description>Was gibt es Neues auf mtb-brandenburg.de</description> </channel> '; // AUSGABE NEWS $show = 5; $ergebnis = mysql_query("SELECT * FROM $tb_news_daten ORDER BY datum"); $start = (mysql_num_rows($ergebnis)>$show) ? mysql_num_rows($ergebnis)-$show : 0; $sql = mysql_query("SELECT * FROM $tb_news_daten ORDER BY datum ASC LIMIT $start, $show"); while ($result = mysql_fetch_array($sql, MYSQL_ASSOC)) { $description = htmlspecialchars($result["text"]); $title = htmlspecialchars('NEWS : '.date("d.m.y - H:i",$result["datum"]).' - '.$result["titel"]); $link = htmlspecialchars("http://www.mtb-brandenburg.de/main.php?news=".$result["newsid"]); $xml .= " <item> <title>$title</title> <description>$description</description> <link>$link</link> </item> "; } // REST $xml .= " </rdf:RDF> "; //File anlegen und speichern $file=@fopen($datei,"w+"); @fputs($file,$xml); @fclose($file); ?> |
Re: RSS-Feed erzeugen (mit PHP)
Hi,
das Problem ist, dass du RSS 0.9 verwendest und ich RSS 2.0. Da ist ein Unterschied in den Namespaces. Und daran wird es wohl liegen. :( Chris |
Re: RSS-Feed erzeugen (mit PHP)
Hi,
habe jetzt auf eine Alternative zurückgegriffen: ![]() Scheint ganz effektiv zu sein und funktioniert auch soweit. Danke, Chris |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:48 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz