AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

RSS-Feed erzeugen (mit PHP)

Ein Thema von CalganX · begonnen am 25. Feb 2005 · letzter Beitrag vom 25. Feb 2005
Antwort Antwort
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#1

RSS-Feed erzeugen (mit PHP)

  Alt 25. Feb 2005, 18:20
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 Golem.de als Vorbild genommen. Außerdem habe ich mir eine kleine Einführung rausgesucht, um die Struktur von RSS-Feeds herauszufinden.
Ich habe mir dann mal folgende Datei gebastelt, die den Feed erzeugen sollte:
Code:
<?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>
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.

Hat jemand eine Idee, was ich falsch gemacht haben könnte?

Chris
  Mit Zitat antworten Zitat
BorlanDelphiUser

Registriert seit: 10. Mär 2003
Ort: Waltersdorf
91 Beiträge
 
Delphi 5 Professional
 
#2

Re: RSS-Feed erzeugen (mit PHP)

  Alt 25. Feb 2005, 18:27
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);
?>
Besucht auch mal meine Homepage www.r-kersten.de. Es wäre schön wenn ihr mir einen Gästebucheintrag hinterlasst.
  Mit Zitat antworten Zitat
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: RSS-Feed erzeugen (mit PHP)

  Alt 25. Feb 2005, 19:03
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
  Mit Zitat antworten Zitat
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: RSS-Feed erzeugen (mit PHP)

  Alt 25. Feb 2005, 19:46
Hi,
habe jetzt auf eine Alternative zurückgegriffen: http://www.bitfolge.de/rsscreator-en.html
Scheint ganz effektiv zu sein und funktioniert auch soweit.

Danke,
Chris
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:50 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz