RSS不会在IE和Chrome上显示,但在Firefox上运行正常吗?

时间:2011-10-13 15:27:04

标签: php mysql rss feed

我使用rss feedphp制作mysql。 我从数据库和格式化的Feed数据中提取出版物如下:

$output = "<?xml version='1.0' encoding='UTF-8'?>
            <rss version='2.0' encoding='UTF-8'>
                <channel>
                    <title>Our CareFusion Publications RSS "</title>
                    <link>http://www.dev.carefusion.co.uk/news/rss.php</link>
                    <description>This is the testing publication rss feeds</description>
                    <language>en-us</language>
                    <pubDate>{$now}</pubDate>
                    <webMaster>Ghazanfar Mir</webMaster>
            ";

然后循环浏览每个出版物:

foreach($getPublications as $publication)
{
    $output .= "<item><title>{$publication['Publication_title']}</title>
                    <link>http://www.dev.carefusion.co.uk/news/rss.php</link>
                    <description>" . strip_tags($publication['Publication_summary']) . "</description>
                    <pubDate>" . date( "D, d M Y H:i:s T", $publication['pubdate']) . "</pubDate>
                </item>";
}

$output .= "</channel></rss>";
header("Content-Type: application/rss+xml; charset=ISO-8859-1");
echo $output;

问题:

  1. 实际上,查询返回8行,但是rss只显示4,为什么? 我检查了它显示所有8个项目的页面的源代码,但在浏览器上只显示了4个。
  2. 这4个项目显示在Firefox上但不显示在IE/Chrome上,为什么

1 个答案:

答案 0 :(得分:0)

您已在<rss>标记上声明了编码,这不是规范的一部分。这是我目前可以看到为什么Feed没有出现在IE / Chrome上的唯一原因。

您能否提供呈现给浏览器的确切来源?这是其他可能阻止它在IE或Chrome上呈现的原因以及为什么Firefox中不会出现超过4个条目;如果XML具有非法字符(例如&<>),则会导致浏览器完全停止呈现它。