【PHP开源代码栏目提醒】:网学会员在PHP开源代码频道为大家收集整理了“毕业设计PHP论坛网站程序设计 - 编程语言“提供大家参考,希望对大家有所帮助!
安徽工业大学 毕业设计
论文说明书 第 I 页 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 安徽工业大学 毕业设计
论文任务书 课题名称 程序设计论坛网站 学 院 计算机 专业班级 网络工程062 姓 名 学 号 069074273 毕业设计
论文的主要内容及要求 1、认真复习软件工程、数据库、计算机网络等相关知识。
2、学习和熟悉
PHP动态网页设计技术。
3、按照软件工程的要求对程序设计论坛网站进行详细的需求分析在此基础上进行功能设计、界面设计最后编码调试实现。
要求能够实现用户在线浏览论坛帖子分主题发表帖子和回复等功能。
4、完成毕业
论文的撰写、修改和定稿。
安徽工业大学 毕业设计
论文说明书 第 II 页 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 摘 要 现在互联网已经成为人们快速获取、发布和传递信息的重要渠道论坛是Internet上最常用的交流工具之一越来越多的人开始把论坛作为他们获取信息的手段和交流的平台。
本毕业设计就是基于PHPMySQL的论坛设计以
PHP Expert Editor作为开发基础采用WAMP架构辅用CSS技术并通过使用模板技术在Apache本地服务器上实现了较完整的论坛功能。
PHP语言执行效率高并易于同数据库连接MySQL数据库访问速度快、稳定性好。
该论坛主要用来为用户提供一个计算机程序语言的交流环境学习资料的共享各类计算机程序技术的讨论问题的求助都可以在论坛上发布该论坛主要包括前台和后台两大部分前台主要实现用户管理和帖子管理前者包括用户注册、用户登录、用户密码找回、用户信息修改等后者包括包括帖子内容显示、帖子发布和回复信息等。
后台主要实现管理员对论坛系统的维护。
关键词论坛PHPApacheMySQL模板 安徽工业大学 毕业设计
论文说明书 第 III 页 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ Abstract Nowadays the Internet has become an important channel for people to gain publish and transfer information on the Internet BBS is one of the most common communication tools more and more people make BBS as the platform to obtain information and communicate with each other. This design is based on the BBSMySQLusing
PHP Expert Editor as exploited foundation adopting WAMP architecturecomplementary with CSS technique and through the use of template techonolgy it realized almost completely BBS functions in Apache local server. The efficiency of
PHP language implementation is high and it is easy to connect with MySQL database access which is fast speed and good stability. This BBS is mainly used to provide users a computer programming language enviroment to exchangeshare information and all kinds of discussion about computer program technology and questions can post on the BBS. This BBS includes two parts:forestage and backstage.Forestage is mainly used to realise user mangement including the user registration user loginuser password retrieved and user information modification etc. Backstage mainly realizes the BBS system administrator for maintenance. KeywordsBBSPHPApacheMySQLTemplate 安徽工业大学 毕业设计
论文说明书 第 IV 页 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 目录 1 绪论 ................................................ 1 1.1课题的研究意义 ......................................... 1 1.2课题的研究现状 ......................................... 1 1.3
论文的研究内容 ......................................... 1 1.4 系统的设计思路 ........................................ 2 2 理论基础 ............................................ 3 2.1 WAMP架构介绍 .......................................... 3 2.1.1 WAMP架构的提出 ............................................ 3 2.1.2 WAMP架构的优势 ............................................ 3 2.1.3 WAMP架构的研究现状 ........................................ 3 2.2
PHP技术 ............................................... 3 2.2.1
PHP技术概述 ............................................... 3 2.2.2
PHP技术特点 ............................................... 4 2.3 MySQL数据库技术 ....................................... 5 2.3.1 MySQL数据库概述 ........................................... 5 2.3.2 MySQL图形管理工具---phpMyAdmin ............................ 6 2.4论坛采用B/S架构 ....................................... 7 3 总体设计 ............................................ 8 3.1论坛可行性分析 ......................................... 8 3.2 论坛需求分析 .......................................... 8 3.3 功能模块的设计 ....................................... 11 3.4 论坛系统数据库的设计策略 ............................. 13 3.4.1 概念结构设计 ............................................. 13 3.4.2 逻辑结构设计 ............................................. 15 4 论坛系统详细设计 ................................... 21 4.1 数据库的访问 ......................................... 21 4.2 CSS样式表的使用 ...................................... 22 4.3 论坛系统功能的实现 ................................... 22 4.3.1系统功能 .................................................. 22 4.3.2普通用户功能 .............................................. 23 4.3.3版主功能 .................................................. 27 4.3.4管理员功能 ................................................ 29 4.4 数据的安全性研究与实现 ............................... 30 4.4.1 论坛系统的安全体系 ....................................... 30 4.4.2 论坛系统安全性的实现 ..................................... 31 5 论坛系统性能优化 .................................... 32 5.1 论坛系统测试 ......................................... 32 安徽工业大学 毕业设计
论文说明书 第 V 页 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 5.2模板技术在论坛中的应用 ................................ 33 6 结束语 ............................................. 36 致谢 ................................................. 37 安徽工业大学 毕业设计
论文说明书 共 43 页 第 1 页 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 1 绪论 1.1课题的研究意义 随着我国改革的深入和发展公共传媒的发展也日新月异。
人们己经不单单只从电视、报纸上得到需要的新闻报道Internet传播介质的出现使得人们能够从更加丰富的网络资源中得到自己想要的信息。
论坛是Internet上最常用的交流工具之一越来越多的人开始把论坛作为他们获取信息的手段和交流的平台。
论坛系统已经成为互联网上人与人之间交互的必备工具特别是做网站必备。
以前我们一直使用留言本形式。
论坛与留言薄的区别在于论坛上的消息是分层次的。
每个人都可以在论坛上发表信息别人可以回复这条消息。
回复消息与被回复消息之间存在一种“父子”关系。
如果将最上层的消息当作“根消息”则每一条子消息都有一个唯一的“父”消息。
因此论坛用做发表意见的场合是最合适的因为可以从中看到不同消息之间的关系访问者不至于在浏览时因为头绪太乱而迷失方向。
由于论坛系统的论坛作为人们日常生活获取信息的手段和交流的平台因此本文研究论坛系统的开发具有重要的实践意义。
1.2课题的研究现状 随着互联网技术的发展现在的论坛系统功能越来越多不但可以发帖回帖还可以上传视频和提供下载等等。
有的论坛系统为了达到更好的用户体验在实现了基本的讨论功能后设计了很多个性化的功能比如在论坛中设置了“个人空间”、“加为好友”等功能还有的论坛系统通过提供免费的空间来增加论坛的发帖量。
当然有些论坛系统的个性化功能设计新颖也非常有使用价值但有些个性化功能的设计却既没有多少使用价值同时又大大的影响了系统的性能。
以目前许多学生自主创办的论坛为例都因盲目重视功能忽略了性能系统运行一段时间后都因性能问题不得不更换其他论坛系统每更换一次论坛的数据就全部丢失。
由此可见实现一个论坛系统如果只重视功能而忽略性能破坏的影响是非常严重的。
经过对一些目前国内外比较典型的BBS论坛系统的方式的分析本文认为去掉系统不必要的个性化功能实现一个性能好、速度快、安全性高并且基本功能完善的论坛系统是很必要的。
1.3
论文的研究内容
论文的主要研究内容是根据目前聊天工具的现状和需求设计出一个具备交互、执行下载数据或程序、上传数据、阅读、与其它用户交换消息等功能并在实际应用中予以实现和评价。
具体的研究内容如下 对论坛系统目前的国内外发展现状进行对比分析找出交流系统存在的问题提出相关的解决策略。
安徽工业大学 毕业设计
论文说明书 共 43 页 第 2 页 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 结合解决策略设计新的适合时代特点的论坛系统并对照原有的传统的交流工具分析论坛的特点和适应性完成论坛的系统实现。
1.4 系统的设计思路 系统将采用软件工程的生命周期过程来进行分析设计。
其基本思路首先是进行系统可行性分析和系统的初步设计规划。
其次进行需求调研主要通过对国内外各种大型论坛进行亲身体验、现有
开源论坛系统的研究及进行网上调查与提问等方式得到需求在此基础上进行需求分析以确定需求是否值得设计开发完成业务逻辑分析与设计确定系统的功能模块等。
接着准确地进行数据库设计、界面设计以实现系统所要达到的规划目标。
最后进行系统布署与测试以改进系统性能。
安徽工业大学 毕业设计
论文说明书 共 43 页 第 3 页 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 2 理论基础 2.1 WAMP架构介绍 2.1.1 WAMP架构的提出 1998年Michael Kunze为德国计算机杂志写了一篇关于Free 软件如何成为商业软件替代品的文章创建了LAMP这个名词Linux 操作系统、Apache网络服务器、MySQL数据库和PHPPerl或Python脚本语言组合而成的—— LAMP 四种技术的开头字母组成随之LAMP技术成为了
开源软件业的一盏真正的明灯。
随着互联网
开源潮流的迅速发展全球IT业正迎来一个新的发展格局成长期而LAMP所代表的
开源软件以其开放性、低成本、安全性、适用性以及可靠的性能正对传统软件、硬件和系统集成商产生巨大的冲击同时也给创新型IT企业、程序开发者创造了前所未有的机遇。
中国
开源软件推进联盟主席陆首群说LAMP也可以派生出WAMPW代表Windows操作系统。
事实上
PHP与.Net是并存的
PHP也可以和Windows捆绑在一起两者并没有冲突可以因地致宜地使用
开源与闭源混合架构。
本系统就是采用WAMP架构进行论坛程序。
2.1.2 WAMP架构的优势 WAMP架构易于开发、安全性高、适用性强、性能可靠、更新速度快、成本低WAMP被许多开发者视为“黄金组合”。
由于Apache是免费的此外还有免费数据库MySQL服务器和
开源语言
PHP共同构建了广受追捧的“WAMPLAMP”套件性价比极高因此赢得了网站开发人员的广泛青睐。
2.1.3 WAMP架构的研究现状 在今天全球已有2000万个网站使用
PHP包括最流行的雅虎、Google、百度也包括像汉莎航空电子订票系统、德意志银行的网上银行、华尔街在线的金融信息发布系统甚至军队系统这类五花八门和苛刻的环境。
随着社区BBS及Web2.0应用的普及以及国内
PHP技术支持者的不断增加据PHPChina资料统计在中国前200名的网站中有61的采用了WAMP技术。
业内人士预计在服务器平台及软件方面WAMP市场占有率将在未来两年内取得更高的市场分额。
2.2
PHP技术 2.2.1
PHP技术概述
PHP全称为Personal Home Page是一种跨平台的服务器端脚本技术。
于1995年开始发行使用到1998年成为一个成熟的软件产品。
它最初是一个人为了写他的 安徽工业大学 毕业设计
论文说明书 共 43 页 第 4 页 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 主页而用Perl写的“包装”程序后来因为用的人多了就发展了起来。
现在
PHP已经成为最流行的Web脚本语言之一它运行在Web服务器端根据用户请求或服务器端的数据产生动态网页。
它功能强大和HTML脚本融合在一起并内建访问数据库的能力。
它能够作为Apache Web服务器的模块执行也使得它的执行效率要高于普通的CGI程序。
PHP是编程语言和应用程序服务器的结合
PHP和其它的编程语言类似使用变量存储临时数值使用操作符处理变量。
PHP的真正价值在于它是一个应用程序服务器应用程序服务器是指一个把几个不同的技术组合为一个完整的套件的程序这些技术包括一个强壮的编程语言存取数据库中存储的数据支持Internet协议尤其是电子邮件和HTTP协议。
PHP大量借用了C、Java、和Perl语言的语法并加入了各种
PHP自己的特征使Web开发者能够写出快速的动态页面。
PHP是一种跨平台的服务器端嵌入式脚本技术。
PHP页面是一种文本文件是在普通HTML页面文件中嵌入
PHP脚本语句由服务器解释和翻译成普通的HTML文件然后传送给客户端浏览器这一点和ASP一样。
PHP脚本语句段以“lt”为开始以“gt”为结束。
“lt”和“gt”之间的脚本语句由服务器软件调用
PHP脚本解释引擎解释后替换为普通的HTML脚本。
PHP语法和C、Perl的语法很相似并主要来源于C语言如控制流语句与C几乎完全一样、变量之间的运算符与C的类似、函数定义和调用与C的类似等。
PHP的变量名前面必须有一个号如Var1、Var2。
PHP的变量作用域规定也类似于C即缺省认为主函数中的变量是全局变量而函数中的变量都是局部变量。
在
PHP中echo和printf函数用来向HTML页面中输出HTML内容其中echo输出无格式字符串printf输出格式化的字符串。
如echoquotwelcome you to come herequot和printfquotsdquotstr1int1。
2.2.2
PHP技术特点 现在通常用的服务器端脚本技术是CGI。
现有的Web后台程序绝大多数采用下列几种技术编写Perl或采用第三方解决方案如ASP虽然每类方案都有各自的强项但均不是理想的解决办法。
Perl编写CGI是使用得最多的方法在网络上也有很多现成的脚本可以拿来修改使用但它却存在公认的性能问题由于Web服务器运行时需调用解释程序解析
代码当站点的访问人数激增时Web服务器的性能也必将直线下降另外则是它的数据库连接功能非常弱某些情况下甚至还会降低数据库的存取速度。
第三方厂商提出了较好的解决方案如Microsoft的ActiveServerPage。
它具有运行速度快数据库操作功能强大等特性受到了许多开发者的欢迎但它们只能单纯地运行于个别平台NT对要求更高回应率的网站来说大多数大中型网站均建于Unix或Linux平台Apache系列Web服务器还是不能顺利采用注目前已有人提出这两种技术在Unix系列平台上应用的方案但要么是不具备源技术的全部优秀功能要么就是只能应用于个别Unix平台。
1997年
PHP开发小组在原 安徽工业大学 毕业设计
论文说明书 共 43 页 第 5 页 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊
PHP/FI2.0的基础上开发出了全新的
PHP3免费让所有人使用和或更改解释器源
代码。
相对于传统的CGI语言
PHP拥有下列超群的特性 1易学易用
PHP的语法结构大部分借用了C、Java、Perl的好的语法框架有以上编程经验的开发人员可快速地掌握投入实际使用。
2运行速度快
PHP采用HTML内置标记技术解释程序本身作为Web服务器的一个模块运行相当大地提高了运行时的解析速度。
经测试表明在Web站点访问量非常大时
PHP的解析速度相当于传统CGI程序的4倍非常适合大中型站点的应用。
3跨多个平台目前
PHP可在Windows、Unix、Linux的Web服务器上正常运行支持IISApache等通用Web服务器用户更换平台时无需变换
PHP代码可即拿即用。
4效率高和其它的解释性语言相比
PHP系统消耗较少的系统资源。
当
PHP作为Apache Web服务器的一部分时运行
代码不需要调用外部二进制程序服务器解释脚本不需要承担任何额外负担。
5开放源码所有的
PHP源码都可以得到。
6没有运行费用
PHP是免费的。
7基于服务器端由于
PHP是在Web服务器端运行的
PHP程序可以很大、很复杂而不会降低客户端的运行速度。
8嵌入HTML因为
PHP语言可以嵌入到HTML内部所以
PHP容易学习。
9简单的语言和Java和C不同
PHP语言坚持以基本语言为基础然而它的功能也强大到足以支持任何类型的Web站点。
10极其强大的数据库支持
PHP最强大也最有代表性的特点在于它的数据库层它内置了对很多数据库的支持而不再需要特殊扩充使得编写基于数据库的网页变得非常简单。
目前所支持的数据库有Oracle、Sybase、FilePro、mSQL、Velocis、MySQL、In-formix、Solid、dBase、ODBC、Unix、dbm、PostgreSQL、MSSQLSERVER等。
针对每个数据库都有一组函数用于数据库访问和操作如对MySQL有mysql_close、mysql_connect、mysql_create_db、mysql_db_query等函数。
11文件存取
PHP有许多支持文件存取的函数。
12文本处理
PHP有许多函数处理字符串其中包括模式匹配的能力。
13复杂的变量
PHP支持标量、数组、关联数组等变量这给用户提供了以支持其它的高级数据结构的坚实基础。
14图像处理用户可以使用
PHP动态地创建图像。
2.3 MySQL数据库技术 2.3.1 MySQL数据库概述 MySQL是一个小型关系型数据库管理系统开发者为瑞典MySQL AB公司。
目 安徽工业大学 毕业设计
论文说明书 共 43 页 第 6 页 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 前MySQL被广泛地应用在Internet上的中小型网站中。
由于其体积小、速度快、总体成本低尤其是开放源码这一特点许多中小型网站为了降低网站总体成本而选择了MySQL作为网站数据库。
MySQL的特性1核心程序采用完全的多线程编程。
线程是轻量级的进程它可以灵活的为用户提供服务而不用浪费过多的体统资源。
2可运行在不同的平台上。
3它有一个非常灵活且安全的权限和口令系统当客户与一个服务器链接时它们之间所有的口令传送被加密而且它允许基于主机的认证。
4它拥有一个非常快速的基于线程的内存分配系统而且没有内存漏洞.