Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: RSS:ää suoltava PHP-koodi ei toimi

Erkkimon [06.11.2005 16:06:00]

#

Elikkäs. Olisi tarkotus tehdä RSS-feedi, mutta se ei nyt oikein ota toimiakseen.

***rss.php
<rss version="2.0">
   <channel>
      <title></title>
      <link>http://www.g-25.net</link>
      <description>1hQja uutisia</description>
      <language>fi</language>
      <webMaster>Tom Himanen && Antti Sinisalo</webMaster>
         <?php
         $database = file("news.dat"); // let's read the news in an array
         $database = array_reverse($database); // the newest news is on the top
         $newsAmount = count($database); // let's count the news

         for ($i = 0; $i < $newsAmount; $i++)
         {
            $data = explode("|", $database[$i]);
            $sender = $data[0];
            $headline = $data[1];
            $news = $data[2];
            $source = $data[3];
            $date = $data[4];

            echo "<item>";
            echo "<title>$headline</title>";
            echo "<description>$news [" . date("d.m.Y", $date) . "]</description>";
            echo "<pubDate>" . date("d.m.Y H:i", $date) . "</pubDate>";
            echo "</item>";
         } ?>
   </channel>
<rss>

Tälläsen se tulostaa selaimella ja samaa voitte kokeilla saada toimimaan RSS-lukijoissanne. http://koti.mbnet.fi/petri65/testing/rss.php

Mulla sanoo, että feediä ei löydy. :<

str4nd [06.11.2005 16:23:21]

#

Koeta pistää koodin alkuun tämä:

header("Content-type: Application/rss+xml");

Yleisin <pubDate>-aikamerkintä on rss:ssä r, eli korvaat koodiin:

echo "<pubDate>" . date("r", $date) . "</pubDate>";

Ai niin. Loppuun voisi korvata <rss>:n </rss>-muotoon, koska tagi varmaan loppuu lopussa?

Erkkimon [06.11.2005 21:37:50]

#

Joo, tein mainitsemasi muutokset. Ei toimi vieläkään. :<
Nyt Firefox ei enää osaa avata tiedostia! Jibii? Se lienee hyvä merkki? Siltikään typerä Akkregatorini ei osaa avata sitä.

Päivitin feedin nettiin [http://koti.mbnet.fi/petri65/testing/rss.php], eli voitte itse havainnoida tapahtumaa linkin avustuksella.

Nykyinen koodi näyttää tältä:

<?php header("Content-type: Application/rss+xml"); ?>
<rss version="2.0">
   <channel>
      <title></title>
      <link>http://www.g-25.net</link>
      <description>1hQja uutisia</description>
      <language>fi</language>
      <webMaster>Tom Himanen && Antti Sinisalo</webMaster>
         <?php
         $database = file("news.dat"); // let's read the news in an array
         $database = array_reverse($database); // the newest news is on the top
         $newsAmount = count($database); // let's count the news

         for ($i = 0; $i < $newsAmount; $i++)
         {
            $data = explode("|", $database[$i]);
            $sender = $data[0];
            $headline = $data[1];
            $news = $data[2];
            $source = $data[3];
            $date = $data[4];

            echo "<item>";
            echo "<title>$headline</title>";
            echo "<description>$news [" . date("d.m.Y", $date) . "]</description>";
            echo "<pubDate>" . date("r", $date) . "</pubDate>";
            echo "</item>";
         } ?>
   </channel>
</rss>

Blaze [06.11.2005 22:13:42]

#

Opera sanoo tuosta, että "XML parsing failed: syntax error (Line: 7, Character: 29)". Koitappas muuttaa nuo &:t &amp;ksi

Erkkimon [06.11.2005 22:21:00]

#

Hmm, meneepäs vaikeaksi. Muutin ne &:t &amp;:ksi. Selain yrittää avata filettä, ja kysyy edelleenkin että millä softalla rss.php avattaisiin. Akkregator puolestaan väittää, ettei kyseistä feediä ole olemassakaan, yritän avata feediä sitten localhostista tai MBnetin serveriltä. En viitsi enää peistata nykyistä koodia tähän koska muutos on niin mitätön.

Blaze [06.11.2005 22:24:05]

#

Ei ole well-formedia vieläkään.
XML parsing failed: syntax error (Line: 8, Character: 1355), näyttäisi olevan puuttuvat lainausmerkit attribuutin ympäriltä: <a href=testing>testing</a>

Erkkimon [06.11.2005 23:13:38]

#

Ai se johtuu tosta. o.0 Hmm, no mulla on sellanen ongelma taas tossa formissa, että jos lähettää formilla viestin, jossa on sitaatit linkissä (<a href="linkki">linkki</a> niin se niinku pätkäsee tekstin tosta sitaatin kohalta ja selaimeen tulostuu "linkki">linkki. En oo keksiny miten sen korjais. Sitten sille pitänee tehdä uusi threadi, jos ongelma on noin fataali.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta