Autor Zpráva
tomas3333
Profil
Neviem, ci to patri sem alebo skor do XHTML. Mam problem s RSS. Generujem ho tymto kodom
<?php
   $select = dbquery("SELECT n.*, us.user_name, us.user_email
                       FROM ".$prefix."news as n 
                       LEFT JOIN ".$prefix."users as us
                         ON n.author=us.user_id 
                       WHERE zobrazovat_od <= '".time()."' 
                         AND (zobrazovat_do >= '".time()."' OR zobrazovat_do = '0') 
                         AND visible<='".$userdata['user_level']."' 
                       ORDER BY permanent DESC, zobrazovat_od DESC, datestamp DESC
                       LIMIT 0,1");

header("Content-Type: text/xml");

echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
?>
<rss version="2.0">
  <channel>
    <?php
      echo "<title>".unescape($site_settings['nazov'])." - ".$RSS_PLUGIN_INFO['nazov']."</title>";
      echo "<link>".INDEX."news/</link>";
      echo "<description>".$RSS_PLUGIN_INFO['popis']."</description>";
      echo "<language>cs</language>";
      echo "<copyright>".unescape($site_settings['nazov'])."</copyright>";

      while($array = dbarray($select)) {
          echo "<item>";
              echo "<title>".unescape($array['title'])."</title>";
              echo "<link>".INDEX."news/".$array['news_id']."-".plain(unescape($array['title']), "-")."/</link>";
              echo "<description>".strip_tags(unescape($array['snippet']))."</description>";
              echo "<author>".$array['user_email']." (".$array['user_name'].")</author>";
              // kategorie
              if ($array['cats'] != 0) {
              	  $cats_where = preg_replace("/,/", "' OR cat_id='", $array['cats']);
              	  $sel_cats = dbquery("SELECT * FROM ".$prefix."news_cats WHERE cat_id='$cats_where'");
              	  while($cats_arr = dbarray($sel_cats)) {
                      echo "<category>".unescape($cats_arr['cat_name'])."</category>";
                  }
              }
              //
              echo "<pubDate>".date("r", $array['datestamp'])."</pubDate>";
          echo "</item>";
      }
    ?>
  </channel>
</rss>


ale v opere potom dostavam error missing root element. Kde mam chybu? :/
Jan Tvrdík
Profil
1. RSS má mime type: application/rss+xml
2. Opera je divná, taky mi zlobila. Zkus to zkontrolovat validátorem. Případně zkus uložit vygenerované RSS jako statický soubor a zkusit, jestli chyba přetrvává.
tomas3333
Profil
validator vyzera ok
http://validator.w3.org/feed/check.cgi?url=http%3A%2F%2Ftomas01.herniweb.cz%2Fnews%2Frss%2F
tomas3333
Profil
ked zoberiem vygenerovany (x)html kod, a pouzijem rovno ten, tak to funguje spravne, neviem kde hladat chybu :/

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0