快速业务通道

在PHP内创建一个Atom提要

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-22
提供了一个基本的代码片段,借此,就能访问用 清单 1 中的代码所创建的这个 MySQL 数据库。

清单 2. 用 PHP 访问这个 MySQL 数据库

$link = mysql_connect(''localhost'', ''admin'', ''password'')
or die(''Could not connect: '' . mysql_error());

mysql_select_db(''fishinhole'') or die(''Could not select database'');

$query = ''SELECT id,title,subtitle,author,posted
FROM reports order by posted desc limit 25'';
;
$result = mysql_query($query)
or die(''Query failed: '' . mysql_error());

该代码实际上涵盖的内容颇丰,所以很有必要对其进行逐步剖析。

首先是 mysql_connect() 函数。您需要针对自己环境的指标相应更改这些参数。第一个参数是数据库主机。在某些情况下,它将非常类似于 清单 2(即 localhost)。在另外一些情况下,它将是一个远端主机(例如,IP 地址 10.92.2.1)。若具备 Domain Name System (DNS) 解析,它还可能是另外一个实际的主机名(比如 mysql.myhost.com)。

第二个参数是将要访问该数据库的 MySQL 用户名。您可以使用如示的 admin,但是必须要确保它是 MySQL 环境内的一个有效帐户。参照 MySQL 文档以了解如何为一个 MySQL 数据库创建帐户。请记住,这里所使用的帐户必须 具有对 REPORTS 数据库的读权限。

第三个参数是用户的密码。它需要与第二个参数内所指定用户的密码相匹配。

or die 子句被包括进来以便在系统故障时为开发人员提供诊断信息。如果无法连接到数据库管理系统,那么在执行 PHP 脚本时,您将会收到一个消息,指出连接失败及失败的原因。

接下来是 mysql_select_db() 函数。在其中选择计划要使用哪个数据库。您自己的 MySQL 可以(并且很有可能)包含很多数据库,所以非常有必要指定想要使用的是哪个数据库,这一点十分重要。

还记得么,我曾建议您如果想要测试本文中提供的代码的功能,需要创建一个名为 fishinhole 的 MySQL 数据库。mysql_select_db() 行就指定了将要使用的是这个数据库。

接下来是实际的查询。在本例中,这个查询在一个字符串中定义。在这里,抓取 REPORTS 表的 ID、TITLE、SUBTITLE、AUTHOR 和 POSTED 列。order by posted desc 子句强迫此查询按 POSTED 列中的日期(即文章发布到 Web 站点的日期)的降序返回行。所以,首先检索到的将是最近发布的文章。这是提要的一种标准实践。

末尾处的 limit 25 子句十分重要。在这里,您将提要指定为最多返回 25 篇文章。还记得么,我之前提到过,这类论坛可能会有数千篇文章。但是在一个提要内返回数千篇文章不太实际。因为这样做会占用大量带宽,很多客户将会不得不等待一段时间。

这个查询是一个字符串。它被分配给一个变量,该变量名字很直观,为 $query。

在 mysql_query() 函数内,实际执行在前一行所定义的查询。该查询的结果存储于 $result 变量内。并且,还包括了 or die 子句以备诊断之用。

循环及 Atom 规范

有了来自数据库的数据之后,就可以以符合 Atom 规范的格式显示它了。由于 Atom 是一种 XML 语言,所以 PHP 文件的输出也是 XML 格式的,而不是 HTML 格式的。如果想要利用 Web 浏览器显示输出,那么,请务必注意它会依据您所使用的浏览器和版本来进行不同的显示。要查看 XML 输出,通常一种最好的做法是右键单击浏览器内的输出并选择 View Source。之后,您将会看到原始的 XML 输出。

在显示有关每篇文章的信息之前,最好先将导言包括到这个 Atom 提要。在这个部分,输出被识别为 Atom 提要,而且还会提供有关此提要的信息,如 清单 3 所示。

清单 3. Atom 导言

<feed xml:lang="en-US" xmlns="http://www.w3.org/2005/

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号