Autor Zpráva
manulka.cz
Profil *
ahoj, mám tento kod RSS:
<?php
  include("config.php");
  header('Expires: ' . gmdate('D, d M Y H:i:s') . '  GMT');
  header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . '  GMT');
  header('Content-Type: text/xml; charset=utf-8');
?>
<?php echo '<?xml version="1.0" encoding="utf-8"?>'; ?>
<?php echo '<?xml-stylesheet type="text/css" href="rss.css"?>'; ?>

<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>MOBILNÍ OPERAČNÍ SYSTÉMY</title>
    <link>http://www.mobilni-operacni-systemy.cz/</link>
    <description>
      ..... Vítejte na webu, který informuje o mobilních operačních systémech Symbian, MAC OS X a Windows Mobile.
    </description>
    <language>cs</language>  
		<copyright>cizinska.martina@gmail.com (Martina Čižinská)</copyright>
    <webMaster>Webmaster: cizinska.martina@gmail.com (Martina Čižinská)</webMaster>
    <category>mobil, mobilní operační systémy, Symbian, MAC OS X, Windows Mobile</category>
    <lastBuildDate><?php echo gmdate("D, d M Y H:i:s")." GMT"; ?></lastBuildDate>
    <atom:link href="http://www.mobilni-operacni-systemy.cz/rss/" rel="self" type="application/rss+xml" />
<?php
    mysql_connect(SQL_HOST, SQL_USERNAME, SQL_PASSWORD);
    mysql_select_db(SQL_DBNAME);
    $vysledek = mysql_query("select nazev, clanek, datum from clanky order by datum desc");
    while($zaznam = mysql_fetch_array($vysledek)) 
    {
?>
    <item>
      <title><?php echo $zaznam["nazev"]; ?></title>
      <description>
        <?php echo htmlspecialchars(strip_tags($zaznam["clanek"])); // zobrazujeme jednotlivé položky bez speciálních znaků ?>
      </description>
      <pubDate><?php echo date("j.n.Y, G:i:s", ($zaznam["datum"])); ?></pubDate>
    </item>
<?php
    }
?>
  </channel>
</rss>


ale validator mi porad pise tuto chybu, ze to neni validni na jednom miste:
line 8, column 12: XML parsing error: <unknown>:8:12: not well-formed (invalid token)
<?php echo '<?xml-stylesheet type="text/css" href="rss.css"?>'; ?>


Za boha nemuzu prijit na to, co je na tom spatne :-( neporadi nekdo??
Bubák
Profil
manulka.cz:
ahoj, mám tento kod RSS:
Tak sem pořád nedávej PHP, ale dej odkaz na RSS.
manulka.cz
Profil *
ja mam ale rss v souboru rss.php. tj spatne?? rada lidi to tak ma, co jsem videla...
Bubák
Profil
Nemůžeš validovat PHP kód, ale jeho výstup, tedy něco takového:
www.example.com/rss.php
manulka.cz
Profil *
jo tak to me nenapadlo, hups :-) ale stejne, kdyz to tam tedy zadam, vypise mi to tyto chyby. zvalidovany kod je tady:
<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type="text/css" href="rss.css"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
 <channel>
   <title>MOBILNÍ OPERAČNÍ SYSTÉMY</title>
   <link>http://www.mobilni-operacni-systemy.cz/</link>
   <description>
     ..... Vítejte na webu, který informuje o mobilních operačních systémech Symbian, MAC OS X a Windows Mobile.
   </description>
   <language>cs</language>  
<copyright>cizinska.martina@gmail.com (Martina Čižinská)</copyright>
   <webMaster>Webmaster: cizinska.martina@gmail.com (Martina Čižinská)</webMaster>
   <category>mobil, mobilní operační systémy, Symbian, MAC OS X, Windows Mobile</category>
   <lastBuildDate>Tue, 01 Dec 2009 09:06:29</lastBuildDate>
   <atom:link href="http://www.mobilni-operacni-systemy.cz/rss/" rel="self" type="application/rss+xml" />
   <item>
     <title>tttttt</title>
     <guid>http://www.mobilni-operacni-systemy.cz/tttttt</guid>
     <description>
       asellus nisi sem, imperdiet sit amet auctor ac, dapibus id risus. Maecenas in nisi nisl. Donec quis elit sem. Etiam ligula augue, viverra eu bibendum eget, venenatis id diam. Nullam feugiat, turpis nec lacinia consectetur, lorem sapien convallis felis, id pretium metus diam et dui. Praesent ultrices, sapien non commodo mattis, nisl enim ultricies erat, ac suscipit neque magna in magna. Duis diam neque, gravida feugiat mollis non, dictum in lacus. Cras ligula orci, vulputate eget dignissim sit amet, bibendum sed lectus. Mauris accumsan nisi at diam dictum hendrerit tincidunt ligula rutrum. Fusce sit amet magna in arcu accumsan ullamcorper. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Sed scelerisque dolor at eros suscipit ac pretium tellus laoreet. Quisque ac luctus ante. Nam vitae suscipit purus. Vestibulum vehicula aliquet purus euismod cursus. Proin sagittis gravida leo at suscipit. Sed sed nisi at justo adipiscing sollicitudin nec in dolor. Nulla facilisis lectus eros, in porta est. Quisque quis leo malesuada turpis consectetur sollicitudin. Integer aliquam, magna non ultrices consectetur, ligula turpis posuere urna, sed cursus diam urna nec magna. Nunc elementum urna sed nibh lobortis nec condimentum neque rhoncus. Donec at arcu vel magna dapibus ullamcorper eu vel nunc. Donec egestas, sem venenatis bibendum dictum, turpis massa sollicitudin libero, et mollis tellus sapien eu turpis. In hac habitasse platea dictumst. Nullam dolor purus, eleifend non placerat eu, ullamcorper cursus mauris. Donec ultricies lobortis blandit. Morbi quam purus, aliquet sit amet euismod ac, ornare quis massa. Sed consequat ullamcorper mauris at pulvinar. Vivamus at mattis velit. Quisque tempor, sem ut varius molestie, dui libero sagittis eros, in malesuada nunc leo sit amet risus. Mauris semper ullamcorper dui quis bibendum. Ut non consectetur velit. Etiam at felis a lorem pharetra cursus ullamcorper a nulla. Suspendisse commodo quam ut mi malesuada semper. Pellentesque fermentum eros eget velit auctor luctus non quis urna. Nulla facilisi. Vestibulum sit amet tellus mi, et feugiat augue. Etiam consequat ante a augue consequat placerat. Pellentesque et t      </description>
     <pubDate>29.11.2009, 16:26:41</pubDate>
   </item>
</channel>
</rss>


vypsané chyby:
line 13, column 44: lastBuildDate must be an RFC-822 date-time: Tue, 01 Dec 2009 09:06:29 [help]
<lastBuildDate>Tue, 01 Dec 2009 09:06:29</lastBuildDate>

line 20, column 35: pubDate must be an RFC-822 date-time: 29.11.2009, 16:26:41 (7 occurrences) [help]
<pubDate>29.11.2009, 16:26:41</pubDate>

In addition, interoperability with the widest range of feed readers could be improved by implementing the following recommendation.

line 14, column 106: Self reference doesn't match document location [help]
... rel="self" type="application/rss+xml" />

ty datumy, dyt mam spravny format ne?? to treti tomu nerozumim vubec :-(
manulka.cz
Profil *
tak uz jsem na to asi prisla. kod php vypada takto. uprava tech datumu na <?php echo date('r'); ?> a je to najednou validni, kdyz nasledne zvaliduju vystup:

<?php
  include("config.php");
  header('Expires: ' . gmdate('D, d M Y H:i:s') . '  GMT');
  header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . '  GMT');
  header('Content-Type: text/xml; charset=utf-8');
?>
<?php echo '<?xml version="1.0" encoding="utf-8"?>'; ?>
<?php echo '<?xml-stylesheet type="text/css" href="rss.css"?>'; ?>

<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>MOBILNÍ OPERAČNÍ SYSTÉMY</title>
    <link>http://www.mobilni-operacni-systemy.cz/</link>
    <description>
      ..... Vítejte na webu, který informuje o mobilních operačních systémech Symbian, MAC OS X a Windows Mobile.
    </description>
    <language>cs</language>  
		<copyright>cizinska.martina@gmail.com (Martina Čižinská)</copyright>
    <webMaster>Webmaster: cizinska.martina@gmail.com (Martina Čižinská)</webMaster>
    <category>mobil, mobilní operační systémy, Symbian, MAC OS X, Windows Mobile</category>
    <lastBuildDate><?php echo date('r'); ?></lastBuildDate>
    <atom:link href="http://www.mobilni-operacni-systemy.cz/rss/" rel="self" type="application/rss+xml" />
<?php
    mysql_connect(SQL_HOST, SQL_USERNAME, SQL_PASSWORD);
    mysql_select_db(SQL_DBNAME);
    $vysledek = mysql_query("select nazev, clanek, datum from clanky order by datum desc");
    while($zaznam = mysql_fetch_array($vysledek)) 
    {
?>
    <item>
      <title><?php echo $zaznam["nazev"]; ?></title>
      <guid>http://www.mobilni-operacni-systemy.cz/<?php echo $zaznam["nazev"];?></guid>
      <description>
        <?php echo htmlspecialchars(strip_tags($zaznam["clanek"])); // zobrazujeme jednotlivé položky bez speciálních znaků ?>
      </description>
      <pubDate><?php echo date('r', ($zaznam["datum"])); ?></pubDate>
    </item>
<?php
    }
?>
  </channel>
</rss>


akorat je zde stale reccomedation:
line 22, column 106: Self reference doesn't match document location

Co to znamena??
Mike8748
Profil
pro spravny format data/casu, pouzij
date(DATE_RFC2822,$udaj_z_databaze);

RFC2822 nahrazuje rfc822. pouzitim daneho parametru jako format u funkce date dostanes ten spravny vysledek, jak je pozadovan
edit: pozde no :)
ta posledni chyba znamena, ze url uvedena uvnitr rss (tedy http://www.mobilni-operacni-systemy.cz/rss/) neni stejna jako url feedu, kterej validujes. nejspis kvuli prepisovani url pomoci mod_rewrite, a ty tedko do validatoru davas primo odkaz na php skript
manulka.cz
Profil *
takže to opravený datum mám správně, no funguje to, tak asi jo :-) jinak s tim doporučením od validátoru, jasny no, jsem si to neuvedomila, páč ten web mobilni-operacni-systemy.cz jeste ani neexistuje tak to bude tim zřejmě. a až existovat bude tak tam pridam /rss.php ne??
Mike8748
Profil
manulka.cz:
to už je jedno, jestli tam bude /rss.php, rss.xml nebo neco jinyho. pomoci mod_rewrite se podstrci obsah feedu, a spravně nastaví hlavička, to stačí.
ale musi to byt to samý, co uvnitř toho feedu bude uložený jako jeho link, pak si validator přestane stěžovat
manulka.cz
Profil *
ok. fakt díky moc rady :-)

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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