基于php微博系统的设计与实现内容摘要:

三步 :所有同数据库相关的操作,都由 PHP 来完成。 PHP 可以很好地完成同数据库的交互。 第四步 :PHP 从数据库中取得数据后,将文件内容转化为 HTML 格式。 第五步 :将 HTML 格式的文件交给 Apache 服务器。 第六步 :Apache 服务器再将其送给客户。 客 户 端M y S Q L数 据 库W e b 服 务 器页 面 返 回客户请求交 服 务 器服务器辨别查询返回执行数据查询P H P 解 释程 序 图 PHP 工作原理图 PHP 独特的语法混合了 C、 Java、 Perl 以及 PHP 自创新的语法。 PHP 安装它可以比 CGI Common Gate Interface 或者 Perl 更快速的执行动态网页。 用 PHP 做出的动态页面与其他的编程语言相比, PHP 是将程序嵌入到 HTML 文档中去执行,执行效率比完全生成 HTML 标记的 CGI 要高许多, PHP 还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。 PHP 具有非常强大的功能,所有的 CGI 的功能 PHP 都能实现而且支持几乎所有流行的数据库以及操作系统。 至 版本时, PHP 已经非常全面地支持面向对象的设计思想。 PHP 由于代码开源免费、开发快捷高效、跨平台性强等特点,已经成为 WEB 开放主流脚本语言之一,近年来已经出现以 PHP 技术为核心的大型商业应用案例。 故本系统根据系统特点决定采用 PHP 作为开发语言 [6]。 Apache 服务器 Apache 是目前互联网上使用最广泛的 web 服务器,它支持多种操作系统,如 :Unix、Linux、 Windows 等,功能强大。 它以快速、可靠、易扩展的特点在所 有的服务器软件中占有优势,并且它的源代码开放,因此有大量的开发人员投入了大量的时间精力来逐步的将其完善, Apache 不仅可作为 web 服务器,它还包含了代理服务器的功能。 当客户机使用 URL 请求访问远程资源时, Apache 接受该请求并取得该资源以满足客户机的请求。 同时如果要创建一个每天有数百万人访问的 Web 服务器, Apache 将是最佳选择。 本系统就是以 Apache 作为开发平台的,因为 PHP 能够作为 Apache web 服务器的模块执行,使得它的执行效率要高于其他的 CGI 程序,而且能比 CGI 或者 Perl 更快速地执 行 动态网页。 Apache、 PHP 在实际应用中为最佳组合。 MySQL 数据库 MySQL 是一个最受欢迎的开源数据库管理系统,任何人都可以从 hitemet 上下载和使用 MySQL 而不需要支付任何费用。 同时也可以研究其源代码,并根据需要进行修改。 与其他的大型数据库相比, MySQL 自有它的不足之处,如规模小、功能有限但对于中、小型应用系统是非常理想的,开源性降低了总体成本。 它具有功能强、使用简便、管理方便、运行速度快、安全可靠性强等优点,许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据 库。 MySQL 特点: 1.使用 C 和 C++编写,并使用了多种 编译器 进行测试,保证 源代码 的可移植性。 2.支持 AIX、 FreeBSD、 HPUX、 Linux、 Mac OS、 NovellNetware、 OpenBSD、OS/2 Wrap、 Solaris、 Windows 等多种 操作系统。 3.为多种 编程语言 提供了 API。 这些编程语言包括 C、 C++、 Python、 Java、 Perl、PHP、 Eiffel、 Ruby 和 Tcl 等。 4.支持 多线程 ,充分利用 CPU 资源。 5.优化的 SQL 查询算法,有效地提高查询速度。 6.既能够作为一个单独的 应用程序 应用在客户端服务器网络环境中,也能够作为一 个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的 GB 231 BIG5,日文的 Shift_JIS 等都可以用作数据表名和数据列名。 7.提供 TCP/IP、 ODBC 和 JDBC 等多种数据库连接途径。 8.提供用于管理、检查、优化数据库操作的 管理工具。 9.可以处理拥有上千万条记录 的大型数据库。 10.支持多种存储引擎。 11. MySQL 是开放源码软件, 建站成本低。 B/S(Browser/Server)结构 B/S(Browser/Server)结构即浏览器和服务器结构。 它是随着 Inter 技术的兴起,对 C/S 结构的一种变化或者改进的结构。 这种结构,建立在广域网之上的,有着更强的适应范围,客户一般只要有操作系统和浏览器就行,可以在任何地方操作,不需要安装专门的软件,特别是现在软件系统的改进和升级越来越频繁, B/S 架构的产品明显体现的更方便的特性 [7]。 无论用户 的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行,而作为客户端,只需安装浏览器,浏览器通过 W 服务器同数据库进行数据交换, B/S 结构与 C/S 结构相比大大降低了维护成本,特别是从 Windows98 开始,将浏览器植入到系统中, B/S 这种结构就更加成 为当前应用软件的首选体系结构。 BIS 系统常常采用的三层体系结构,这三层体系结构在层与层之间相互独立,任何一层的改变不会影响其他层的功能 [14]。 相应的,一个 web 工程的开发中也存在同样的三层逻辑结构。 (l)数据访问层 :实现对 数据的访问功能,如增删改查数据。 (2)业务逻辑层 :实现业务的具体逻辑功能,如考生成绩管理等。 (3)页面显示层 :将业务功能在浏览器上漂亮的显示出来,如分页显示考生信息。 利用 PHP 技术实现的 WEB 浏览页本身就具备多页面、可视化编程的要求友好的界面有利于开发的人性化 [8]。 D B M S 数 据 库客 户 端 浏 览 器W e b 服 务 器 图 三层体系架构示意图 CSS 布局方法 CSS 是 cascading style sheets(层叠样式表 )的简称,语言是一种标记语言,它不需要编译,可以直接由浏览器解释 执行,简单来说 CSS 可以使一个普通的网页通过添加 CSS规则从而得到美观的网页 [9],同时还可以通过添加不同的 CSS 规则,不需要改变 HTML就可以改变整个网页的整体布局,减少工作量。 使用 DW+CSS 布局的优势的体现 : (l)页面样式调整更方便 :这样更加方便维护,只需改变几个 CSS 文件即可将网站的样式进行调整。 使得修改页面的时候更加省时、方便,如果对部分布局进行修改,也不会破坏页面其他部分的布局样式。 (2)页面容量小,代码简洁 :这样可以提高浏览页面的速度,同时也提高了搜索引擎对网页内容的搜索。 (3)符合 W3C 标准 :这样就保证了网络应用升级但网站不会被淘汰。 (4)支持浏览器向后兼容。 第 3 章 系统分析 需求分析 1. 可用性 微博系统应对所有使用用户提供及时的服务。 系统应保证对 24 小时运作的客服系统的服务 ,系统维护时间应计划在服务的最低峰时间;让用户尽快地得到需要的信息,页面具有一致的使用风格,对用户可能出错的地方有预先的分析与防范,使用户得到较好的用户体验。 2. 响应时间 进行数据查询时,当处于系统使用高峰期时应保证系统具有对 95%的数据交互查询,更新提供 3 秒或更短响应时间的支持,当处于 系统使用低峰期时应保证系统具有对95%的数据交互查询,更新提供 2 秒或更短响应时间的支持 [10]。 当进行数据添加、更新时,系统内部应提供对请求处理的来源及响应时间的监控机制。 系统响应时间因不同外部数据源和使用系统的通讯和接口情况而有所差异。 3. 可靠性 微博系统不应在正常操作中丢失数据,当用户正在使用系统时 ,系统不应瘫痪,应能够保证在线用户及时得到关注对象发布信息的推送,保证编码、语言正确,用户关注 4. 易于使用性 微博系统应有操作故障排除手册来帮助系统管理人员来快速解决系统问题。 系 统的管理和操作界面应易于使用。 对 95%的数据交互查询,更新提供 2 秒或更短响应时间的支持 [10]。 当进行数据添加、更新时,系统内部应提供对请求处理的来源及响应时间的监控机制。 系统响应时间因不同外部数据源和使用系统的通讯和接口情况而有所差异。 3. 可靠性 微博系统不应在正常操作中丢失数据,当用户正在使用系统时 ,系统不应瘫痪,应能够保证在线用户及时得到关注对象发布信息的推送,保证编码、语言正确,用户关注 4. 易于使用性 微博系统应有操作故障排除手册来帮助系统管理人员来快速解决系统问题。 系 统的管理和操作界面应易于使用。 5. 可扩展性 系统 建设不仅要着眼于现在,而且要放眼未来,因此 系统 建设不仅要满足现在的要求,而且要具有向未来技术平滑过渡的能力。 即:该系统的建立一定要具备良好的可 扩展 性,当信息量上升、网络规模扩大时,可方便地将服务器及其他设备进行升级服务, 满足日益增长的业务需求,最大限度保护投资。 6. 备份和灾难的及时恢复 微博系统应每天对所有运作相关的数据进行备份,以及备份的微博系统,防止运行系统瘫痪时能及时使用备份数据库重新提供系统的服务。 系统目标 本文是针对目前 国内主流微博产品所具备的主要特点和功能进行设计,具有对微 1. 完备的系统功能 本系统是一个功能完备的微博网站,可用于建站运行,也可在此基础上方便地进行二次开发。 2. 灵活的系统设置 系统管理员可以根据需要,对于系统灵活地进行各种配置,例如开闭用户注册、过渡关键词、系统名称等,方便建站。 3. 个性的个人管理 用户不仅可以设置昵称、性别、头像等基本信息,而且可以修改个人基本信息和详细信息。 1. 实现基础功能,便于二次开发。 任何一款互联网产品都有特定应用领域,特定用户群体及其需求。 而本系统的定位于实现目前多数微博系统所具备的基本功能,并使其框架结构具备灵活、易用性、扩展性等特点,以便其它用户在此基础上针对具体应用进行二次开发。 2. 博文应具备多媒体形式,含文字、图片、表情等。 微博的主要特点之一在于其具有“平民化”的特点,因而博文需要承载丰富的内容。 这便要求对于博文的信息呈现具有多样的形式。 所以除了文字以外,还需要有图片等多媒体呈现形式,和表情、分享等为满足“娱乐化”的功能。 3. 本系统应 该具备向用户推荐好友、博文、话题等功能。 当新用户注册登录后,需要有人性化的引导过程,其中应当包括推荐好友功能。 另外,推荐好友、博文、话题等,应当放到系统醒目位置,以便更加人性地服务用户,增加用户体验。 4. 本系统提供关注好友功能以及群组功能。 微博平台主要以广播用户消息为主,论组,由管理员针对某一特定关系群体创建,可由用户对群组广播消息,其它用户可查看群组消息。 5. 用户提供对博文多种多样的操作。 当关注者对于某条博文非常感兴趣 或观点而希望能够表达其想法时,本系统应当提供一些简单、便捷的使用方式,系统并可据此从 而决定推荐关注度非常高的博文给所有用户。 6. 允许用户就某一话题发表相关博文。 由于博文限定 140 字,内容虽小,但数据量非常大,难以形成针对某一话题的相关应用。 故需提供话题功能,以便系统对博文进行良好的组织,并从而为用户提供话题搜索等相关功能。 第 4 章 系统设计 总体功能设计 本系统设计主要围绕着用户体验的良好性,和网络数据的轻便性开展。 微 博 系 统 登 录 注 册 发 日 志 发 微 博 上 传 图 片 修 改 信 息 发 私 信 加 关 注 好 友 管 理 修 改 头 像 修 改 密 码 个 性 签 名 其 他 信 息 评 论 回 复 评 论 回 复 查 看 相 册 邮 箱 管 理 图 微博系统总体功能示意图 系统主要功能模块有: 零级页 面: 登录页面和注册页面 一级页面: 微博首页:显示关注对象的微博日志更新以及最新的评论和回复,显示自己的关注人数量,显示新私信,显示操作按钮与其他页面的链接。 二级页面: 个人首页:可以更改个人信息,包括头像修改,密码修改,昵称、邮箱、性别、 院系、社团、籍贯等个人信息的修改。 微博发布:发布页面可以发表微博和日志。 好友管理:用户可以对自己感兴趣的人加关注,查看自己的关注对象以及关注自己的人,可以针对专业、社团、地区等条件筛选用户。 相册管理:通过相册管理可以上传、查 看、下载、删除图片。 站内私信:相当于邮箱功能,可以管理收件箱、发件箱,可以发送私信、接受私信,可以从关注人列表添加收信人。 三级页面: 评论与回复:用户可以对自己感兴趣的微博日志进行评论,对评论可以进行回复。 系统模块功能详细。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。