php + rss:为什么图像不显示?

时间:2010-07-10 11:00:38

标签: php image rss

我在我的网站上用PHP创建自己的RSS源,它从我的网站加载了一个名为“博客”的博客,除了一件事以外它都可以正常工作......没有图像出现在文章。这是我的代码的输出部分:

while($data = mysql_fetch_assoc($news))
{
    echo "<item>" . chr(10);
    echo "<title>[$data[type]] $data[name]</title>" . chr(10);
    echo "<author>Johannes Jensen</author>" . chr(10);
    echo "<link>http://www.funbyjohn.com/v2/?blog=$data[url]</link>" . chr(10);
    echo "<image>" . chr(10);

    if($data["type"] == "text")
    {
        $imageurl = "http://www.funbyjohn.com/v2/gfx/mini_me.png";
    } else
    {
        $imageurl = "http://www.funbyjohn.com/v2/media/thumb-$data[date].png";
    }

    echo "<src>$imageurl</src>" . chr(10);
    echo "<title>$data[name]</title>" . chr(10);
    echo "<link>http://www.funbyjohn.com/v2/?blog=$data[url]</link>" . chr(10);
    echo "</image>" . chr(10);

    if($data["type"] == "text")
    {
        $content = $data["content"];
    } else
    {
        $content = $data["label_info"];
    }

    echo "<description>" . strip_tags(preg_replace("/\n+/", " ", $content)) . "</description>" . chr(10);
    echo "<pubDate>" . date("D, j M Y H:i:s", $data["date"]) . " GMT</pubDate>" . chr(10);
    echo "</item>" . chr(10);
}

这是一篇文章输出的例子

<item>
<title>[image] Here's a new screenshot from Go Sheep!</title>
<author>Johannes Jensen</author>
<link>http://www.funbyjohn.com/v2/?blog=heres-a-new-screenshot-from-go-sheep</link>
<image>
<src>http://www.funbyjohn.com/v2/media/thumb-1277466055.png</src>
<title>Here's a new screenshot from Go Sheep!</title>
<link>http://www.funbyjohn.com/v2/?blog=heres-a-new-screenshot-from-go-sheep</link>
</image>
<description>*article goes here*</description>
<pubDate>Fri, 25 Jun 2010 06:40:55 GMT</pubDate>
</item>

我做错了吗?请帮忙。

这是我感兴趣的任何人的RSS提要:
http://www.funbyjohn.com/v2/rss.php

2 个答案:

答案 0 :(得分:2)

答案 1 :(得分:0)

CDATA - (未分析)字符数据

术语CDATA用于不应由XML解析器解析的文本数据。

像“&lt;”这样的字符和“&amp;”在XML元素中是非法的。

“&LT;”将生成错误,因为解析器将其解释为新元素的开头。

“&安培;”将生成错误,因为解析器将其解释为字符实体的开头。

有些文字,比如javascript代码,包含很多“&lt;”或“&amp;”字符。为避免错误,脚本代码可以定义为CDATA。

解析器会忽略CDATA部分内的所有内容。

CDATA部分以<![CDATA[开头,以]]>

结尾