如果您曾经留意过,就会知道 Twitter
是 Web 2.0 世界最大的轰动事件之一。简单来说,
Twitter(Twitter.com
上提供的一个服务)是一个简单的微博客服务,用户可以发最多 140
个字符的贴子(称作 tweet
“
),回答 你现在在做什么?” 之类的问题。用户可以追随他们
感兴趣的人,也有自己的追随者。通过这种方式,可以将信息发布给追随者或是广泛地转
发。
随意浏览一下某个 Twitter
账户可以发现,用户常常发布关于很多不同话题的 tweet,从
“
”
日常生活(例如 我在吃三明治 )到更不平凡的话题。其中常常嵌入了图像、媒体文件和
日志的链接。这些 URL
常常被 TinyURL 之类的服务缩短,主要是为了使贴子的总字符数
不超过 140 个字符。
很多人喜欢上了 Twitter,使超短格式成了一种艺术形式,甚至将之用于与其他用户交谈
(例如将他们的评论定向到 @user
)。从这个简单的起点开始,涌现了大量支持 Twitter
的移动应用程序和其他工具。现在甚至还有专门为最有趣、最卓越和最详实的 tweet 而设
置的奖项,另外还有跟踪不同 Twitter 应用程序的状态的在线应用程序。
很多其他站点和服务,例如 LinkedIn
和 Facebook
现在允许用户用仿照 Twitter 的方式更
新他们的当前状态。换句话说,在 Facebook 更新状态需要使用短消息,当然,状态通常
“
”
是回答 你现在在干什么 之类的问题。
为您自己的站点添加微博客或状态更新工具不需要做很多工作,但是却可以为用户带来
乐趣和简单的交流方式。本文的目标是展示如何实现这个目的。但是,首先需要对您作一
些假设。
首先,假设您对 PHP
和 MySQL
有所了解。同时假设您可以访问某个运行 PHP
和 MySQL
的 本 地 Apache Web
服 务 器 。 对 于 本 文 , 我 在 使 用 Macintosh 、 Apache 、 MySQL 和
PHP(MAMP
)的 MacBook Products 上进行开发,这个免费程序将整个开发环境打包到
一个包中。但是,您应该能够毫无困难地在 Microsoft® Windows®
或 Linux® 上进行开发。
最后,假设您已经有一个可以立即运行的应用程序,该应用程序现在有一些用户,您打
算以某种方式将微博客或 tweeting 添加到该应用程序中。为此,我简化应用程序中侧重用
户的一些方面(例如登录、管理个人文件等),而侧重于贴子。
设计应用程序的后端
简言之,Twitter 服务以两个名词为中心:用户和消息。如果您已经构建了一个应用程序,
并且希望将类似 Twitter 的服务添加到应用程序中,那么很可能已经有了用户管理功能。
如果还没有,那么需要采用某种方式使用一个数据库表(一个主键,通常是一个整数)、
一个用户名(也是惟一的)、一个电子邮件地址和密码等标识每个用户。
tweet
(即贴子)存储在一个 posts 表中,每个贴子有一个主键(某种连续整数)、一个指
向发出该贴的用户的外键关系、贴子本身(限制为一定数量的字符)和日期/时间戳。
最容易令人感到迷惑的是显示用户追随关系的数据库表。这里需要某种方式记录用户 ID
和追随者 ID,使应用程序能够快速建立追随者列表,并轻松地将信息转发给那些已注册
为要追随某用户的其他用户。
理解这些内容后,现在就可以着手建立这 3
个数据库表。使用清单 1
中的 SQL 代码创建
第一个表,即 users
表(如果已经有一个 users 表,则可以跳过这一步)。
清单 1. users 表
CREATE TABLE `users` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`username` VARCHAR( 255 ) NOT NULL ,
`email` VARCHAR( 255 ) NOT NULL ,