
RSS - opravdu nemůžu dávat do XML souboru PHP příkazy?
Ahoj, tak jsem tu znova, chtěl bych si na moji novou verzi stránek udělat RSS kanál a tohle mi to nějak nežere:
<?xml version="1.0" encoding="windows-1250"?>
<rss version="0.91">
<channel>
<title>RSS stránek mrk-novak.ic.cz</title>
<link>mrk-novak.ic.cz</link>
<description>RSS kanál</description>
<language>cs</language>
<?php
include "db.php"
$uvodni = mysql_query("SELECT * FROM `articles` ORDER BY `id` DESC");
?>
<?php
while($row = mysql_fetch_array($uvodni))
{
?>
<item>
<title><? echo $row['title'] ?></title>
<link>mrk-novak.ic.cz/ukazclanek.php?id=<? echo $row['id'] ?></link>
<description><? echo $row['preface'] ?></description>
</item>
</channel>
<?
}
?>
</rss>
Asi v XML souboru nemůžou být PHP příkazy, jak to teda je udělané na Poradně? Jenom stačí nastínit, kde co je. Díky za odpovědi.
PHP kód v XML souboru se neinterpretuje. Odkaz na RSS nemusí být jen na XML soubor, ale třeba i na skript, jehož výstupem je XML, takže stačí, když tenhle soubor přejmenuješ na php.
jo díky a jak to udělat, aby se prostě po kliknutí třeba na ikonku objevilo už okýnko pro přidání do kanálů? Takhle se prostě zobrazí text a konec.
Prohlížeče se dívají na odkaz v hlavičce, takže do <head> elementu přidej
Opera zobrazí ikonu RSS v address baru, Explorer vedle záložek a Firefox určitě taky někde.
rss.php
Zatím takto, ale nevím proč se nezobrazuje title? A jak mám udělat styl, aby to vypadalo třeba jako na poradně?
Já bych řekl že to není validní XML. Jestli se nepletu tak musí být všechny hodnoty vlastností uzavřeny do uvozovek.
V prvom rade posielaj správnu HTTP hlavičku Content-Type, takže zmeň text/html na text/xml. Ostatné chyby na teba potom povyskakujú samé.
Vlastný štýl je spravený pomocou XSLT, ale použije sa len v niektorých prehliadačoch (normálne prehliadače použijú svoj vlastný spôsob zobrazenia).