2012-02-19 37 views
0

我有此代碼爲我的RSS,但是當我把它添加到任何RSS閱讀器 如Outlook例如....我沒有看到說明。 我只看到了標題和鏈接。我看不到任何描述由我的rss?

這是我的代碼:

<?php 


// Database settings 


include("config.php"); 


@header('(anti-spam-(anti-spam-(anti-spam-(anti-spam-content-type:)))) text/xml'); // Must declare the content type 
echo '<?xml version=\'1.0\' encoding=\'UTF-8\'?>'; 

$name_site="test "; 

$dat = date("j/n/Y",time()); 

// Set RSS version. 


echo ' 
<rss version=\'2.0\'> '; 





// Start the XML. 





echo " 
<channel>"; 

echo "<title>".$name_site." RSS</title>\n"; 
echo "<link>".$pathsite."</link>\n"; 
echo "<description>test</description>\n"; 
echo "<date>".$dat."</date>\n"; 



$url=$_SERVER['SERVER_NAME']; 


$data = mysql_query("select * FROM `vacancies` order by id desc limit 50"); 
while($row = mysql_fetch_array($data)) 
{ 




echo " 
<item> 
<title>$row[entitle]</title> 
<description>$row[entxt]</description> 
<date>$row[date]</date> 
<link>http://$url/showjob.$row[id].html</link> 

</item>"; 
} 





echo ' 
</channel> 
</rss>'; 
?> 

任何幫助,請顯示完整的描述。

+2

這些都是一些可笑的換行符。 – BoltClock 2012-02-19 10:38:29

+0

你只是看不到文本,或者在返回給客戶端的XML中缺少文本? – home 2012-02-19 10:50:06

回答

0

在while循環,你在雙引號"使用$row[entitle]。當你並沒有引述entitle$row[entitle]將成爲又$row[entitle]作爲字符串附加。這將在輸出處產生,Array[entitle]

你所要做的是使用{$row['entitle']}。這裏{}表示變量。 '表示關鍵。

+0

我做你告訴我的。 但MR.Shiplu不工作... 我的RSS工作完美,但我的問題「全文與html元素像圖像,href和..等」不加載...在$ r ['entext'] .. – 2012-02-19 11:12:58

+0

@ SamiloxSamilox在描述標記中插入html。您需要[escape](http://en.wikipedia.org/wiki/XML#Escaping)或附帶[CDATA](http://en.wikipedia.org/wiki/CDATA) – 2012-02-19 11:20:53

+0

謝謝。 Shiplu ... $ row ['entxt'] = stripslashes($ row ['entxt']); $行[ 'entxt'] =用htmlspecialchars($行[ 'entxt']); <![CDATA [$ row [entxt]]> 沒關係! – 2012-02-19 11:53:32