php技巧-把RSS内容写入数据库实例教程

有时候,你需要在一个自己另外的网站上调用文章,可是,你又懒得每次去录入更新,如果不在一个主机上,远程连接数据库又不是很好的注意,那么怎么办?抓取!

如果去写个抓取的程序,是比较麻烦的,而且,也可能带来临时的速度影响。好在,可以获取RSS,这样比较方面。

如何用php获取RSS的示例,我前面有写过一篇文章:http://blog.xukhost.com/2819.html

但是,这样的做法,会造成每次打开网站都变慢,而且如果另一个站挂了还会拖慢更多。那么怎么办呢?写个定时脚本,把抓取的数据写入数据库,但是每次打开页面是从数据库查询即可。大家先去看我前面的那个文章。然后得到一些代码,那么这里面有个地方可以利用,看这里:

  1. //构造输出字符串 ,显示的地方,可以自定义!
  2. $rss_str .= “<div class=\”result_list\”><a href='”.$link.“‘ target=_blank>”.$title.“</a></div><div class=\”line\”></div>”;
  3. $is_item = 0;

这个地方是把数据处理了,最后面 echo $rss_str; 的。那么,我们就修改这里,改为SQL语句即可。

  1. $sqlup = “INSERT INTO  `dbname`.`rss_news` (`id`,`title`,`link`) VALUES (”,  ‘”.$title.“‘,  ‘”.$link.“‘)”;
  2. mysql_query($sqlup,$mysql);
  3. $sqlin=mysql_insert_id();

当然了,你需要写一个连接数据库的配置信息,和建立相关的数据表和字段,详情查看我前面写的php教程:

http://blog.xukhost.com/3023.html   and  http://blog.xukhost.com/3064.html

数据库的话,可以执行下面的语句来添加数据表和字段:

  1. CREATE TABLE `sdt_news` (
  2.   `id` int(2) NOT NULL auto_increment,
  3.   `title` varchar(128) NOT NULL,
  4.   `link` varchar(64) NOT NULL,
  5.   UNIQUE KEY `id` (`id`)
  6. ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=11 ;

这里会建立一个 sdt_news 的数据表,同时建立“id、title、link”三个字段。

请自己在本地环境测试该功能,完成后再上线,如果完全看不懂或者部分不懂,请付费联系解决。

QQ  184923973

发布者

yumanutong

网名 yumanutong ,简称小草,可以付费找我解决问题哦。