1. 程式人生 > >XML應用之RSS

XML應用之RSS

ann rss lang oct 分享 指向 firefox ctype odin

1、制作自己的RSS訂閱源,訂閱源的內容通常是從數據庫中讀取,首先創建一個數據庫;

 1 #創建數據庫
 2 create database blog charset utf8;
 3 
 4 #切換數據庫
 5 use blog;
 6 
 7 #創建表
 8 create table blog(
 9     id int unsigned not null primary key auto_increment,
10     title varchar(120) not null default ‘‘,
11     author varchar(20) not null default ‘‘,
12     `desc` varchar(255) not null default ‘‘,
13     content text
14 );
15 
16 #添加幾條記錄
17 insert into blog(title,author,`desc`,content) values(‘什麽是RSS‘,‘淡水深流‘,‘即簡易信息聚合‘,‘簡易信息聚合(也叫聚合內容)是一種RSS基於XML標準,在互聯網上被廣泛采用的內容包裝和投遞協議。‘);
18 
19 insert into blog(title,author,`desc`,content) values(‘RRS的應用‘,‘淡水深流‘,‘即簡易信息聚合‘,‘簡易信息聚合(也叫聚合內容)是一種RSS基於XML標準,在互聯網上被廣泛采用的內容包裝和投遞協議。‘);

2、寫一個rss.php文件,從數據庫中讀取數據,並生成一個XML文檔,生成XML文檔有以下幾種方式:

(1)DOM方式

(2)SimpleXML方式

(3)拼湊字符串

這裏我們使用第三種拼湊字符串方式,

 1 <?php
 2 header("Content-Type:text/xml;charset=utf-8");//一定要加
 3 //從數據庫中讀取數據
 4 $conn = mysql_connect(‘localhost‘,‘root‘,‘root‘);
 5 mysql_select_db(‘blog‘);
 6 mysql_query(‘set names utf8‘);
 7 $sql = "select * from blog";
 8 $res = mysql_query($sql);
 9 $blogs = array();
10 while($row = mysql_fetch_assoc($res)){
11     $blogs[] = $row;
12 }
13 
14 //生成XML文檔,使用拼湊字符串方式
15 $xml = "<?xml version=‘1.0‘ encoding=‘utf-8‘?>";
16 $xml .= "<rss version=‘2.0‘>";
17 $xml .= "<channel>";
18 $xml .= "<title>淡水深流主頁</title>";
19 $xml .= "<link>http://www.cnblogs.com/scyang/</link>";
20 $xml .= "<description>淡水,故可潔其行;深流,故可靜其心。</description>";
21 $xml .= "<language>zh-cn</language>";
22 foreach($blogs as $blog){
23     $xml .= "<item>";
24     $xml .= "<title>{$blog[‘title‘]}</title>";
25     $xml .= "<link>http://www.cnblogs.com/scyang/articles/{$blog[‘id‘]}.html</link>";
26     $xml .= "<description>{$blog[‘desc‘]}</description>";
27     $xml .= "</item>";
28 }
29 $xml .= "</channel>";
30 $xml .= "</rss>";
31 echo $xml;

3、再寫一個blog.html頁面中,提供一個超鏈接指向rss.php文件

<!DOCTYPE html>
<html>
<head>
    <title>blog</title>
    <meta charset="utf-8">
</head>
<body>
<a href="rss.php"><img src="xml.gif" alt="訂閱"> 訂閱</a>
</body>
</html>

訪問blog.html,結果如下:

技術分享

點擊該按鈕,可以查看到如下效果:

技術分享

*註意:請使用firefox瀏覽器來查看效果,因為它默認安裝了rss訂閱器。

XML應用之RSS