校友联谊网站毕业设计论文.docx
《校友联谊网站毕业设计论文.docx》由会员分享,可在线阅读,更多相关《校友联谊网站毕业设计论文.docx(41页珍藏版)》请在冰豆网上搜索。
![校友联谊网站毕业设计论文.docx](https://file1.bdocx.com/fileroot1/2023-2/23/045c1dcc-63e8-4959-9e76-6d149a404bf9/045c1dcc-63e8-4959-9e76-6d149a404bf91.gif)
校友联谊网站毕业设计论文
第一章前言
1.1开发背景
随着近年因特网(Internet)技术的飞速发展,万维网(WorldWideWeb简称Web)融会了越来越多的信息。
万维网提供了一个可以轻松驾驭的图形化用户界面,用户通过它可以轻松连接因特网所覆盖的一个庞大的信息网络。
基于此,诞生了“网站”这样一种的新兴媒体,它已经成为一个实时的,多媒体的信息传播渠道。
网站的载体主要是计算机,范围覆盖全球各地,没有国界,不分人种,时时刻刻地提供服务。
目前,人们已经把网站称之为广播、电视、报刊以外的第四新闻媒体,以“共享、公平、公正、创新、国际化、团队精神”为特征的网络文明也已逐渐成为这个时代的标志,人们越来越习惯于通过Internet网络获取信息,通过Internet在网站上发表自己对社会对生活的理解和建议。
为了适应信息技术和网络化、一体化的发展,学校也有了相应的需求建立自己的网站,用以存储数据和人事管理以及给校内人员提供一个方便快捷的交流平台。
为了达到这些目的,学校需要建立一个基于BBS(BulletinBoardSystem,电子公告板)的网站——“校友联谊网站”,让用户既能够进行交流和联系其他用户,还可以在允许的权限范围内发布和查询相应的信息。
作为BBS,它应该是一种交互性极强的、网友喜闻乐见的电子信息服务系统,能够提供一块公共电子白板,每个用户都可以在上面书写,发布各自的信息或提出不同的看法,以便于其他用户进行交流讨论;作为学校网站,它又必须能够体现出校园内部网站的特点,能够实现校园新闻发布等功能。
基于这样的考虑,本系统开发的校友联谊网站应具有的最基本模块有用户模块、公共信息模块、讨论区模块、密码重建模块及后台管理模块等。
其中:
(1)用户模块主要包括用户注册、登录登出及个人信息管理等;
(2)公共信息模块主要实现用户公共信息的发布及查询;
(3)讨论区模块主要显示讨论区内容和文章内容,同时用户可以发表文章和回复相应文章;
(4)密码重建模块主要实现用户丢失密码后的密码重建;
(5)后台管理模块主要实现管理员对整个网站的管理功能,包括对讨论区创建、修改和删除,对公共信息、讨论区文章的管理,新闻公告的发布、删除,以及对用户的个人资料修改和删除等。
“校友联谊网站系统”采用了Linux+Apache+MySQL+PHP开发,选择在Linux操作系统中使用目前比较流行的Apache服务器结合MySQL数据库使用PHP语言进行web设计,充分发挥Linux下PHP与MySQL结合的优势。
1.2项目提出的意义
校友联谊网站,是一种为用户提供网上信息交流、相互联络的网络工具,通过网络实现了校友之间的远程交互以及信息资源的共享。
校友联谊网站为校友之间进行交流和联系提供了一个平台。
利用网络资源优势和技术优势,通过提供完善的信息发布查询服务和规范的用户管理,以达到增进校友之间、校友与母校之间的感情,方便校友联系的目的,并以此加快学校的信息化建设。
同时通过本网站用户可以方便的、有针对性的与同学进行交流,了解班级同学的信息、动向。
用户也可以发布信息或文章,实现资源共享。
它为在校学生、毕业生提供了一个多元化的交流平台,既可以通过它寻找同学,也可以利用它实现在线交流,同时,它还可以承担一部分网络教学的任务,弥补学生在网络学习中交流方面的不足,和同学间通过讨论形成合作性学习,提高自己的专业学习水平。
第二章网站开发环境与实现技术
2.1开发和运行环境
2.1.1硬件设备及操作系统
服务器:
PentiumIII1G(或与此相当的CPU)以上配置的高性能PC机,有网络接口卡(NIC),内存应在256M以上,硬盘在80G以上。
确认该计算机已经安装Apache服务器,数据库软件MySQL,还可选用备份服务器。
操作系统:
windowsNT或以上
客户端:
PentiumIII500(或与此相当的CPU)以上配置的PC机,有网络接口卡(NIC),内存应在256M以上,硬盘在2G以上。
网络:
服务器和客户端应有网络连通,配置TCP/IP协议以及需要申请一个连接Internet的固定IP地址。
2.1.2系统开发平台
电脑配置:
一般PC,CPU:
酷睿DuoT2050,内存:
1G,硬盘:
80G
操作系统:
RedHatLinuxFedoraCore6.0
开发环境:
PHP5.1.6
Web服务平台:
Apache2.2.2
数据库:
MYSQL5.0.22
系统开发平台的Web服务器采用ApacheHTTPServer,Apache提供HTTP协议的服务,并通过与其他Web服务器沟通,相互联结而形成全球信息网。
Apache成为Web服务器主流的原因是由于它拥有的一些特色:
(1)结合并支持最新的通信协议,包括HTTP1.1版;
(2)可配置的灵活性极高,且能随时加入其他组织开发的模块,增加系统功能;
(3)可采用Apache模块化的应用程序接口(applicationprograminterface,API),并视情况所需自行开发模块;
(4)向所有用户开放完整的源代码,用户可依照自己的需求修改程序;
(5)充分展示跨平台的优势,在Windows95/98、WindowsNT/2000、Netware5.x、OS/2,还有UNIX及其衍生的操作系统上皆能执行,其中包括现今呼声很高的Linux操作系统。
Apache在FedoraCore6.0中的版本信息可以通过以下命令查看:
图1Apache查看信息命令
当前显示版本信息为2.2.3-5,这是目前为止Fedora发布的最新版本。
Apache的启动命令为:
servicehttpdstart,停止命令为servicehttpdstop,重新启动的命令为:
servicehttpdrestart。
在浏览器中输入Linux虚拟主机IP地址即可测试启动是否正常,如:
http:
//192.168.0.166,默认正常情况下会出现以下界面:
图2Apache成功显示页面
Apache的主要配置文件为/etc/httpd/conf/httpd.conf,下面对本次环境搭建中用需要修改的几个选项作相应说明:
#DocumentRoot:
Thedirectoryoutofwhichyouwillserveyour
#documents.Bydefault,allrequestsaretakenfromthisdirectory,but
#symboliclinksandaliasesmaybeusedtopointtootherlocations.
DocumentRoot"/var/www/html"
DocumentRoot用于存放网页数据的根目录,所有来自客户端的请求,都会以此目录中的网页(index.html)来响应,默认的目录为/var/www/html,自行设计网页文件以后应该保存在此目录中;当然此处可以进行修改,根目录修改后,网页文件应保存在修改后的目录中。
#DirectoryIndex:
setsthefilethatApachewillserveifadirectory
#isrequested.
#Theindex.html.varfile(atype-map)isusedtodelivercontent-
#negotiateddocuments.TheMultiViewsOptioncanbeusedforthe
#samepurpose,butitismuchslower.
DirectoryIndexindex.htmlindex.html.var
DirectoryIndex选项可用来指定用户连接到每个目录时默认打开的网页名称,系统默认为index.htmlindex.html.var,本机由于首页为index.php故在后面加上index.php。
#Specifyadefaultcharsetforallcontentserved;thisenables
#interpretationofallcontentasUTF-8bydefault.Tousethe
#defaultbrowserchoice(ISO-8859-1),ortoallowtheMETAtags
#inHTMLcontenttooverridethischoice,commentoutthis
#directive:
AddDefaultCharsetUTF-8
配置文件中默认字符集为UTF-8,在此为了使用方便以及对汉字的支持,我们将其注释掉。
Apache文件中选项在本次毕业设计中修改部分如上所示,其余部分未作修改使用默认值即可。
2.2开发工具和关键技术
2.2.1PHP技术
PHP,是英文超级文本预处理语言(PHP:
HypertextPreprocessor)的缩写。
PHP是一种被广泛应用的开放源代码的HTML内嵌式多用途脚本语言。
PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,现在被很多的网站编程人员广泛的运用。
PHP独特的语法混合了C、Java、Perl以及PHP自创新的语法。
它可以比CGI或者Perl更快速的执行动态网页。
用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;与同样是嵌入HTML文档的脚本语言JavaScript相比,PHP在服务器端执行,充分利用了服务器的性能;PHP执行引擎还会将用户经常访问的PHP程序驻留在内存中,其他用户再一次访问这个程序时就不需要重新编译程序了,只要直接执行内存中的代码就可以了,这也是PHP高效率的体现之一。
PHP具有非常强大的功能,所有的CGI或者JavaScript的功能PHP都能实现。
正因为PHP是这样一种简单的、面向对象的、解释型的、健壮的、安全的、性能非常之高的、独立于架构的、可移植的、动态的脚本语言,它能运行在包括Windows、Linux等在内的绝大多数操作系统环境中,常与免费的Web服务器软件Apache和免费数据库软件MySQL配合使用于Linux平台上。
同时PHP具有强大的数据库支持能力,目前其支持范围覆盖了包括Oracle,Sybase,MicrosoftSQL,MySQL,Informix,SoliddBase,ODBC,Unixdbm,PostgreSQL,AdabasD等在内的大多数常见数据库。
用它编写一个含有数据库功能的网页程序十分简单。
PHP可以编译成具有与许多数据库相连接的函数。
PHP与MySQL是绝佳组合。
你还可以自己编写外围的函数去间接存取数据库。
通过这样的途径当用户更换使用数据库时,可以轻松的更改编码以适应变化。
而PHP5正式版本的发布,标志着一个全新的PHP时代的到来。
它的核心是第二代Zend引擎,并引入了对全新的PECL模块的支持。
PHP5的最大特点是引入了面向对象的全部机制,并且保留了向下的兼容性。
程序员不必再编写缺乏功能性的类,并且能够以多种方法实现类的保护。
另外,在对象的集成等方面也不再存在问题。
使用PHP5引进了类型提示和异常处理机制,能更有效的处理和避免错误的发生。
在不断更新的同时,PHP5依然保留对旧有的PHP4程序可以运行于PHP5的平台上而不会出现较大问题。
随着MySQL数据库的发展,PHP5还绑定了新的MySQLi扩展模块,它提供了一些更加有效的方法和实用工具用于处理数据库操作。
PHP5添加了面向对象的PDO模块,提供了另外一种数据库操作的方案,统一数据库操作的API。
PHP5提供了数据库引擎SQLite扩展,直接用这个扩展就可以创建和使用SQLite数据库。
这些方法大都以面向对象的方式实现,同时也极大地提高了基于数据库的Web项目的执行速度。
同时PHP5.2.0还增加了JSON函数,更好的支持Ajax。
本次毕业设计中,在安装Linux虚拟机时已经定制了PHP相关软件包,不需要独立安装PHP5。
可以使用命令查看当前安装版本,当前版本为php-5.1.6-3。
如果系统中没有安装PHP5,则可以使用命令rpm–ivhphp软件包的全路径名安装PHP软件包。
图3PHP查看命令
2.2.2MYSQL数据库
数据库从最初的数据文件简单集合发展到今天的大型数据库管理系统,已成为人们日常生活中不可或缺的组成部分。
市面上的数据库产品种类繁多,例如Oracle,SQLServer,MySQL,Sybase,Access等,从大型企业的解决方案到中小型应用系统,可以满足用户的多样化需求。
数据库技术从60年代中期至今只有不到40年的历史,但其发展速度之快是其它技术所不及的。
它已由第一代的层次型、网状型数据库,第二代的关系型数据库发展到今天以面向对象为主要模型的数据库,即第三代数据库。
数据库技术和网络通信技术、面向对象编程技术、并行计算机技术、人工智能技术相互融合、相互渗透,促进了数据库技术的广泛应用。
数据库(Database),是按照数据结构来组织、存储和管理数据的仓库,是用于查询大量数据的存储区域。
使用数据库可以带来许多好处:
如减少了数据的冗余度,从而大大地节省了数据的存储空间,实现数据资源的充分共享等等。
此外,数据库技术还为用户提供了非常简便的使用手段,使用户易于编写有关数据库应用程序。
特别是近年来推出的计算机关系数据库管理系统,操作直观,使用灵活,编程方便,功能强大,环境适应广泛,数据处理能力极强。
数据库的设计是指对一个给定的应用环境,构造数据库模式,建立数据库及其应用系统,满足各种用户需求。
作为信息资源开发、管理和服务的一种有效的手段,数据库技术的应用已越来越广泛,从小型的单项事务处理系统到大型的信息系统大都用先进的数据库技术来保持系统数据的安全性、完整性和共享性。
对一个实际的系统来说,数据库表的设计在遵循数据库理论的同时,必须能用开发工具来实现用户在各方面提出的功能要求。
一个真正的、完整的站点是离不开数据库的,因为少量的数据,如网页访问人数等完全可以存储在文本文件中,但实际应用中,需要保存的数据远不止这一点点,而且这些数据之间往往还有关联,利用数据库来管理这些数据,可以很方便的查询和更新。
可以说一个动态网站的建设是离不开一个设计最优的数据库的。
MySQL是瑞典的MySQLAB公司开发的一个可用于各种流行操作系统平台的关系数据库系统,它具有客户机/服务器体系结构的分布式数据库管理系统。
MySQL完全适用于网络,用其建造的数据库可在因特网上的任何地方访问,因此,可以和网络上任何地方的任何人共享数据库。
MySQL具有功能强、使用简单、管理方便、运行速度快、可靠性高、安全保密性强等优点。
MySQL用C和C++编写,它可以工作在许多平台(Unix,Linux,Windows)上,提供了针对不同编程语言(C,C++,JAVA等)的API函数;使用核心线程实现多线程,能够很好的支持多CPU;提供事务和非事务的存储机制;快速的基于线程的内存分配系统;MySQL采用双重许可,用户可以在GNU许可条款下以免费软件或开放源码软件的方式使用MySQL软件,也可以从MySQLAB公司获得正式的商业许可。
除了以上特点,MySQL还有一个最大的特点,那就是在诸如UNIX这样的操作系统上,它是免费的,可从因特网上下载其服务器和客户机软件。
并且还能从因特网上得到许多与其相配的第三方软件或工具。
而在Windows系统上,其客户机程序和客户机程序库是免费的。
将MySQL与其他数据库系统,就性能、支持、特性(与SQL的一致性、扩展等等)、认证条件和约束条件、价格等进行比较,相比之下,MySQL具有许多吸引人之处,因此本系统选择选用MySQL数据库管理系统实现。
1.速度。
MySQL命令执行的速度很快,是目前运行速度最快的SQL语言数据库之一。
2.容易使用。
MySQL是一个高性能且相对简单的数据库系统,与一些更大系统的设置和管理相比,其复杂程度较低。
3.价格。
MySQL对多数个人用户来说是免费的。
4.小巧。
4.1.1的数据库发行版仅仅只有21M,安装完成也仅仅51M。
5.支持查询语言。
MySQL可以利用SQL(结构化查询语言),SQL是一种所有现代数据库系统都选用的语言。
也可以利用支持ODBC(开放式数据库连接)的应用程序,ODBC是Microsoft开发的一种数据库通信协议。
6.性能。
许多客户机可同时连接到服务器。
MySQL数据库没有用户数的限制,多个客户机可同时使用同一个数据库。
可利用几个输入查询并查看结果的界面来交互式地访问MySQL。
7.连接性和安全性。
MySQL是完全网络化的,其数据库可在因特网上的任何地方访问,因此,可以和任何地方的任何人共享数据库。
而且MySQL还能进行访问控制,可以控制哪些人不能看到用户的数据。
8.可移植性。
MySQL可运行在各种版本的UNIX以及其他非UNIX的系统(如Windows和OS/2)上。
MySQL可运行在从家用PC到高级的服务器上。
9.开放式的分发。
MySQL容易获得;只要使用Web浏览器即可。
如果不能理解某样东西是如何起作用的,或者对某个算法感到好奇,可以将其源代码取来,对源代码进行分析。
如果不喜欢某些东西,则可以更改它。
图4MySQL查看信息
以下部分是MySQL的配置简介:
RedHatFedoraCore6.0中当前MySQL版本为mysql-5.0.22-2.1,若没有安装则可以使用rmp–ivh+mysql软件包的全路径名。
在终端中使用命令/etc/rc.d/init.d/mysqldstart或servicemysqldstart即可以启动mysql数据库,使用mysql–uroot–p命令即可进入mysql数据库,如图5所示:
图5进入数据库命令
MySQL默认产生的用户名和密码是root和空密码,出于安全性考虑需要手动设置mysql密码,可以使用mysqladmin–urootpassword修改root用户密码。
2.2.3网页制作工具
1.DreamweaverMX2004
Dreamweaver是美国MACROMEDIA公司开发的集网页制作和管理网站于一身的所见即所得网页编辑器,它是第一套针对专业网页设计师特别发展的视觉化网页开发工具,利用它可以轻而易举地制作出跨越平台限制和跨越浏览器限制的充满动感的网页。
Dreamweaver对于DHTML(动态网页)的支持特别好,可以轻而易举地做出很多眩目的互动页面特效。
插件式的程序设计使得其功能可以无限的扩展。
利用Dreamweaver中的可视化编辑功能,可以快速地创建页面而无需编写任何代码。
Dreamweaver制作出来的网页兼容性比较好,制作效率也很高,Dreamweaver包括可视化编辑、HTML代码编辑的软件包,并支持ActiveX、JavaScript、Java、Flash、ShockWave等特性,而且它还能通过拖拽从头到尾制作动态的HTML动画,支持动态HTML(DynamicHTML)的设计,使得页面没有plug-in也能够在Netscape和IE4.0浏览器中正确地显示页面的动画。
同时它还提供了自动更新页面信息的功能。
本系统的整个开发过程基本上是通过Dreamweaver网页制作工具来设计调试完成的。
2.PhotoshopCS2
网页制作离不开图片,生动的网页需要有各式图片填充其中。
而Photoshop的专长就在于图像处理。
从功能上看,Photoshop可分为图像编辑、图像合成、校色调色及特效制作部分。
图像编辑是图像处理的基础,Photoshop可以对图像做各种变换如放大、缩小、旋转、倾斜、镜像、透视等。
也可进行复制、去除斑点、修补、修饰图像的残损等。
这在婚纱摄影、人像处理制作中有非常大的用场,去除人像上不满意的部分,进行美化加工,得到让人非常满意的效果。
图像合成则是将几幅图像通过图层操作、工具应用合成完整的、传达明确意义的图像,这是美术设计的必经之路。
photoshop提供的绘图工具让外来图像与创意很好地融合,成为可能使图像的合成天衣无缝。
校色调色是photoshop中深具威力的功能之一,可方便快捷地对图像的颜色进行明暗、色编的调整和校正,也可在不同颜色进行切换以满足图像在不同领域如网页设计、印刷、多媒体等方面应用。
特效制作在photoshop中主要由滤镜、通道及工具综合应用完成。
包括图像的特效创意和特效字的制作,如油画、浮雕、石膏画、素描等常用的传统美术技巧都可藉由photoshop特效完成。
而各种特效字的制作更是很多美术设计师热衷于photoshop的研究的原因。
2.3Linux+Apache+PHP+MySQL解决方案的优势
开源世界有一个著名的说法就是LAMP,它是Linux、Apache、MySQL(开源数据库)和Perl/PHP/Python的首字母缩写。
Linux+Apache+Mysql+Perl/PHP/Python,是一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台,P所代表的三种脚本语言,以其灵活性、简便性和快捷性获得为数众多的开发者的青睐。
随着开源潮流的蓬勃发展,开放源代码的LAMP已经与J2EE和.Net商业软件形成三足鼎立之势,并且该软件开发的项目在软件方面的投资成本较低,因此受到整个IT界的关注。
从网站的流量上来说,70%以上的访问流量是LAMP来提供的,LAMP是最强大的网站解决方案。
Linux以它的高效性和灵活性著称。
它能够在PC计算机上实现全部的Unix特性,具有多任务、多用户的能力。
Linux是在GNU公共许可权限下免费获得的,是一个符合POSIX标准的操作系统。
Linux操作系统软件包不仅包括完整的Linux操作系统,而且还包括了文本编辑器、高级语言编译器等应用软件。
它还包括带有多个窗口管理器的X-Window图形用户界面,如同我们使用WindowsNT一样,允许我们使用窗口、图标和菜单对系统进行操作。
Linux之所以受到广大计算机爱好者的喜爱,主要原因有两个,一是它属于自由软件,用户不用支付任何费用就可以获得它和它的源代码,并且可以根据自己的需要对它进行必要的修改,无偿对它使用,无约束地继续传播。
另一个原因是,它具有Unix的全部功能,任何使用Unix操作系统或想要学习Unix操作系统的人都可以从Linux中获益。
运行Linux需要的配置并不高,支持众多的PC周边设备,并且这样一个功能强大的软件完全免费,其源代码是完全公开的,任何人都能拿来使用。
Apache是一个WEB服务器软件,和Microsoft的IIS相比,具有免费、开源、轻便,运行可靠的优势,据统计,目前在全球的WEB服务器市场,Apache占有60%的市场。
PHP是一个跨平台的服务器端的脚本语言,它是专门为Web而设计的。
在HTML页面中可以嵌入PHP代码,这些代码在每次页面被访问时执行。
PHP代码将在Web服务器中被解释并且生成HTML输出。
PHP免费、开源。
支持数据库操作,可以和HTML混和编辑,是进行中小型WEB开发的一个理想的工具。
PHP对各种数据