php网络论坛的设计与实现内容摘要:

子、回复帖子、查看自己发表的帖子等操作。 后台的功能完成管理员或者版主需要使用的功能: 进入后台,可进行论坛类别的管理、版面管理和用户管理等的操作。 两个部分都分别由 MVC 模式实现。 总体设计 需求分析 开发 BBS 论坛系统的目的是提供一个供用户交流的平台,为广大用户提供交流经验、探讨问题的社区。 因此, BBS 论坛系统最基本的功能首先是发表主题,其次是其他 人员根据主题发表自己的看法 [1]。 此外,为了记录主题的发表者和主题回 复者 的信息 ,系统还需要提供用户注册和登录的功能。 只 有注册的用户登录后才能够发表和回复主题,浏览者(游客)只能浏览主题 和回复 信息。 根据用户的需求及以上的分析, BBS 论坛需要具备前台功能和后台功能。 (1)系统前台功能:显示各论坛类别及版面、查看版面下所有 跟帖 、查看精华帖子、查看自己发表的帖子、搜索帖子、查看根帖内容、用户注册、用户登录、发表帖子、回复帖子。 (2)系统后台功能:进入后台、论坛类别管理、 论坛 版 快 管理、用户管理。 操作方式:全部操作都可以基于浏览器进行。 系统设计 前台功能结构 用户访问论坛首页面后,可进行查看版面下跟 贴信息、查看自己发表的帖子、查看精华帖子、搜索帖子、查看 跟帖 信息、用户注册等功能。 用户在此 BBS 论坛中通过注册成为该网站的真正用户并成功登录系统后,可进行发表帖子、回复帖子、查看自己发表的帖子等操作。 前台功能结构图如图 所示。 江苏大学本科毕业论文 5 B B S 论 坛 前 台浏览帖子浏览跟帖回复帖子用户登录找回密码用户注册退出登录发表帖子 图 BBS 前台功能结构图 后台功能结构 若用户的权限为管理员,则可进入后台,可进行论坛类别的管理、版面管理和用户管理的操作。 后台功能结构图如图 所示。 B B S 论 坛 后 台类别管理帖子管理版块管理用户管理 图 BBS 后台功能结构图 系统 后 台 流程图 BBS 论坛的系统后台流程图如图 所示。 用 户 登 录 是 否 管 理 员类 别 管 理否进 入 后 台管 理是版 块 管 理帖 子 管 理用 户 管 理 图 BBS 论坛系统后台流程图 系统前台流程图 BBS 论坛的系统前台流程图如图 所示。 江苏大学本科毕业论文 6 游 客 前 台访 问查 看 帖 子查 看 跟 帖用 户 注 册注 册 成 功提 示 成 功 是提 示 失 败 否用 户 登 录注 册用 户查 看 帖 子查 看 跟 帖发 表 帖 子发 表 回 复退 出 登 录是 否 管 理 员否置 顶 帖 子删 除 帖 子 图 BBS 论坛的系统前台流程图 开发 环境和工具 开发环境 在开发此论坛的时候,需要具备下面的软件环境 服务器端: ● 操作系统: windows 7。 ● Web 服务器: Apache。 ● Php 版本 : php。 ● 数据库 服务器 : MySQL。 ● 数据库 管理软件 : Navicat for MySQL。 ● 浏览器: Firefox 12。 ● 分辨率:最佳效果为 1024768 像素。 客户端: ● 浏览器: 及其 以上 版本 或 firefox 4 及其以上版本。 ● 分辨率:最佳效果为 1024768 像素。 江苏大学本科毕业论文 7 PHP 简介 PHP 于 1994 年由 Rasmus Lerdorf 创建,刚刚开始只是一个简单的用 Perl 语 言编写的程序,用来统计他自己网站的访问者。 后来又用 C 语言重新编写,包括可以访问数据库。 在 2020 年 5 月 22 日,以 Zend Engine 为基础的 PHP 4 正式发布, 2020 年 7 月 13 日则发布了 PHP 5, PHP 5 则使用了第二代的 Zend Engine[5]。 PHP 包含了许多新特色,像是强化的面向对象功能、引入 PDO( PHP Data Objects,一个存取数据库的延伸函数库)、以及许多效能上的增强。 2020 年 PHP 5 成为了 PHP 唯一的有在开发的 PHP 版本。 目前, PHP 版本已经发布。 PHP 的特性包括: 开放的源代码: 所有的 PHP 源代码事实上都可以得到。 PHP 是免费的。 和其它技术相比, PHP 本身免费。 php 的快捷性 程序开发快,运行快,技术本身学习快。 嵌入于 HTML:因为 PHP 可以被嵌入于 HTML语言,它相对于其他语言,编辑简单,实用性强,更适合初学者。 跨平台性强: 由于 PHP 是运行在服务器端的脚本 ,可以运行在 UNIX、 LINUX、 WINDOWS 下。 效率高: PHP 消耗相当少的系统资源。 图像处理: 用 PHP 动态创建图像 面向对象: 在 php4,php5 中,面向对象方面都有了很大的改进,现在 php 完全可以用来开发大型商业程序。 专业专注: PHP 支持脚本语言为主,同为类 C 语言。 PHP 独特的语法混合了 C、 Java、 Perl 以及 PHP 自创新的语法。 它可以比 CGI 或者Perl 更快速的执行动态网页。 用 PHP 做出的动态页面与其他的编程语言相比, PHP 是将程江苏大学本科毕业论文 8 序嵌入到 HTML 文档中去执行,执行效率比完全生成 HTML 标记的 CGI 要高许多; PHP 还可以执行编译后代码,编译可以达到加密和优化代码 运行,使代码运行更快。 ThinkPHP 简介 ThinkPHP 是一个快速、兼容而且简单的轻量级国产 PHP 开发框架,诞生于 2020年初,原名 FCS, 2020 年元旦正式更名为 ThinkPHP,遵循 Apache2 开源协议发布,从 Struts结构移植过来并做了改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结构和 MVC 模式,融合了 Struts 的思想和 TagLib(标签库)、 RoR 的 ORM 映射和 ActiveRecord 模式,封装了 CURD 和一些常用操作,单一入口模式等,在模版引擎、缓存机制、认证机制和扩展性方面均有独特的表现。 ThinkPHP 的分层架构采用三层架构模式: 表现层:包含模板视图、用户界面、 JS、Flash 等通过模板引擎的支持,可以使用标签定义简化表现层的定义工作。 业务层:包含业务接口层、业务逻辑层、实体层、数据访问层 Action 控制器作为业务接口层,提供系统各种业务操作的入口。 因此,不提倡在控制器类中写过多的业务逻辑代码,虽然说很难严格控制。 具体的业务逻辑应该封装到数据访问对象( Dao)类中实现,如果觉得过于复杂,还可以把 子业务在 Helper 类中包装后统一调用。 业务处理过程一般会构造出业务实体对象(如 Vo 对象),对业务实体对象的存取通过数据访问层完成。 数据访问层把实体对象和数据库数据之间建立映射关系,并且封装了通用的数据操作。 数据层:目前支持的数据库有 MySql、 MsSql、 PgSql、 Oracle、 Sqlite,最新版本已经提供 PDO 的支持,数据库的选用和业务逻辑没有关系。 江苏大学本科毕业论文 9 第三章 数据库技术 MySQL 数据管理系统 MySQL 是一个小型关系型数据库管理系统,开发者为瑞典 MySQL AB 公司。 在 2020年 1 月 16号被 Sun 公司收购。 而 2020 年, SUN 又被 Oracle 收购。 MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内。 这样就增加了速度并提高了灵活性。 MySQL 的 SQL“结构化查询语言”。 SQL 是用于访问数据库的最常用标准化语言。 MySQL 软件采用了 GPL( GNU 通用公共许可证)。 由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据库。 如果使用合适的工具, MySQL 数据库的管理就会变 得相当简单。 应用 MySQL 命令行方式需要对 MySQL 知识非常熟悉,对 SQL 语言也是同样的道理。 不仅如此,如果数据库的访问量很大,列表中数据的读取就会相当困难。 phpMyAdmin 是一个用 PHP 编写的,可以通过 web 方式控制和操作 MySQL 数据库。 通过 phpMyAdmin 可以完全对数据库进行操作,例如建立、复制、删除数据等等。 Navicat for MySQL 是一套专为 MySQL 设计的高性能数据库管理及开发 工具。 它可以用于任何版本 或以上的 MySQL 数据库服 务器,并支持大部份 MySQL 最新版本的功能,包括触发器、存储过程、函数、事件、视图、管理用户等。 SQL 语句 SQL( Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。 SQL 是高级的非过程化编程语言,是沟通数据库服务器和客户端的重要工具,允许用户在高层数据结构上工作。 它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以,具有完全不同底层结构的不同数据库系统,可以使用相同的 SQL语言作为数据输入与管理的接口。 它以记录集合作为操作对象,所有 SQL 语句接受集合江苏大学本科毕业论文 10 作为输入,返回集合作为输出,这种集合特性允许一条 SQL 语句的输出作为另一条 SQL语句的输入,所以 SQL 语句可以嵌套,这使它具有极大的灵活性和强大的功能,在多数情况下,在其他语言中需要一大段程序实现的功能只需要一个 SQL 语句就可以达到目的。 由此可见, SQL 语句非常强大。 本论坛只用到了比较基本的几个语句 ,在这里只介绍下基本的常用的几个语句。 SQL 语言包括三种主要程序设计语言类别的语句:数据定义语言( DDL),数据操作语言( DML) 及数据控。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。