毕业论文(设计)
网盘系统分析与设计
学生姓名:学号:
系别:专业:
指导教师:评阅教师:
论文答辩日期
答辩委员会主席
I
摘要
网盘系统是为了合理利用网络资源、提供各用户之间的学习与交流,并搭建
有效管理信息资源的网络平台。这次研究以开发一个信息共享平台为目标,设计
一个网盘系统,本系统基于浏览器/服务器模式模式,在超文本预处理语言网页
架站工具组合包集成开发环境下采用甲骨文关系型数据库管理系统和超文本预
处理语言开发完成。本系统由用户管理模块、文件管理模块、好友管理模块、信
息管理模块与管理员模块等构成,其中用户模块实现了用户注册、登陆、修改个
人资料、上传、下载及管理文件等功能;好友管理模块实现了注册进该系统的用
户可添加其他用户为好友,并且设置内部访问权限,让用户群拥有自己的内部空
间,这样可以更好更便捷的分享文件及图片信息而不被非本用户群内的人员看
到;信息管理模提供用户可对自己的好友发送消息和接收消息,对好友的信息发
送及接收进行有效的管理;超级管理员拥有普通管理员一样的权限外,还拥有用
户管理的权限(可添加用户,为用户分配权限,也可删除某个存在的用户或修改
其信息,用户信息包括密码等)。该系统可以提供局域网内用户更快速、更便捷
的分享图片、文件上传和下载,使他们在互联网络中不受时间和空间的限制,只
要在这个系统中的用户都可以进行文件共享上传、下载文件操作,进入空间直接,
界面更简单明了;本系统能促进用户之间的信息交流,实现用户自由访问,操作
方便、简单,提高网络用户之间的信息交互效率。
关键字:数据库,网盘系统,超文本预处理语言
II
Abstract
temaims
atmakinguofInternetresources,providexchanginglearningbetweeninsidersof
Netizens,stembadonB/Smode,
whichcompletedwithMysql+Phplanguageunderapprvintegrateddevelopment
stemismadeupofveralmanagementmodules;includingUr,
Filemanagement,Friend,partofUrachieves
thefunctionofur’sregistration,loggingin,alteringpersonalinformation,uploading,
endpartmakesurethat
registeredurcanaccessthissystemandaddotherursasfriends,installingaccess
permission,providingthememberstheirownspaceofthemlves,sharingmore
convenientandbetterdocumentsandimageswithoutbeingenbynon-member.
UrscanntandreceivemassagesfromfriendsintheInformationpart..Super
administratorholdthesameauthorityasordinaryoneandgettherighttomanage
urs,suchastoaddmembers,todistributepermissionforurs,todeleteor
exchangeur’sinformation,tralnetworkdisksystemmakeit
easierandfasterforinsidersofLocalareanetwork(LAN),toshare,uploadand
stemprovidesimpleinterface
forurstoshare,uploadanddownloadeasier,temcan
promoteinformationexchangebetweenintermembers,makingafreeandeasyvisit
forur,improvingtheInformationinteractionefficiencyofthememberofthe
Interneturs.
Keywords:Databa,Networkdisksystem,HypertextPreprocessor
III
目录
摘要........................................................................................................I
Abstract.....................................................................................................II
1绪言
1.1课题背景...............................................................................................................1
1.2网络磁盘发展现状...............................................................................................2
1.3网络磁盘系统开发的目的和意义.......................................................................2
1.4计算机网络的模式和介绍...................................................................................2
1.5系统相关技术与环境简介...................................................................................4
2需求分析
2.1可行性分析............................................................................................................8
2.2系统的需求分析...................................................................................................9
2.3数据流程分析.....................................................................................................11
2.4系统运行环境.....................................................................................................12
3系统总体设计
3.1系统的总体框架.................................................................................................13
3.2数据库设计.........................................................................................................14
3.3概念结构设计.....................................................................................................15
4详细设计
4.1系统前台设计.....................................................................................................19
4.2系统用户功能模块设计.....................................................................................20
4.3后台页面设计.....................................................................................................25
5系统运行测试
5.1运行.....................................................................................................................28
5.2测试.....................................................................................................................28
5.3测试的方法.........................................................................................................29
5.4测试内容.............................................................................................................29
IV
5.5测试结果.............................................................................................................29
6总结
6.1编写代码的经验.................................................................................................31
6.2测试经验.............................................................................................................31
6.3遇到问题和解决的办法.....................................................................................31
致谢......................................................................................................................33
参考文献.................................................................................................................34
声明....................................................................................................................36
1
1绪言
1.1课题背景
在信息技术迅速发展的今天,信息以数据资料的形似演变为多种形态透过复
杂的信息网络系统传递。随着Internet的日益普及,信息的交互传递已经被推向
至高点。在基于信息共享的理念上,如何快速、准确的获得信息也成为人们关注
的关键问题。新一代基于互联网的企业(如Google、百度等),更是仅仅抓住这
个问题的核心,提供信息共享与检索的服务,并向Microsoft、SunSystem等传
统IT企业发起了挑战[1]。所以,对于文件共享与检索服务的研究,也正成为当
今互联网技术研究的前沿。本毕业设计的目的主要是为了检查学生综合运用以前
所学知识(包括以前所学的一些关于网络技术、网络协议、数据库、编程技术等
相关知识)的能力,实现一个网盘系统为目标,开发一个功能较完善的基于B/S
的网盘系统。
随着计算机及网络技术的不断发展,现代通讯工具应用的普及,计算机在现代
社会生活中发挥着重要的作用。而与之相伴随的就是大量的数据资料而且是一些
经常使用的文件资料。根据人们的实际需求,我们提出了基于计算机网络的文件
共享系统的设计方案,并根据该设计方案部分地实现了文件共享及检索系统的基
本功能[2]。随着网络技术应用的普及,各地区相继建立了自己的网络,并开始实施
网上办公和网上交流。文件共享是将用户的文件存放在互联网上,方便用户“携
带”他们的文件,方便用户与他的好友或同事“共享”他们的文件,用户可以有如
下操作:上传、下载、删除文件,以及创建和查询文件;开设、冻结、删除、修
改下级账号等等。人们可以不受时间和空间的限制,文件共享上传文件简易,进
入空间方便,界面更简单明了。
本系统是根据一个局域网内共享数据资料和信息交互的需求为基础的一个
项目开发,并构建一个小区域内的网盘系统模型。由于现代办公部门普遍搭建局
域网络,因为工作和学习的需要,每天都会有大量的文件进行传输和相关消息的
公告等;虽然本部门内部备有U盘,QQ群共享等文件传输工具,但是U盘在
物理位置上不够方便,而QQ群共享在上传速度和上传大小上及空间容量上会有
一定的限制,缺乏一个较为系统性的文件传输体系,这给该部门的办公人员对资
料的传输和内部数据的交流带来了极大的不便,为了让该部门内部人员更快的数
据资料共享和传输,因此开发出一个在局域网内上传速度快、空间容量大、可上
传较大的文件、支持格式多和分有内部访问权限的系统是十分必要的。
2
1.2网络磁盘发展现状
当前互联网的发展相继出现了U盘物理硬盘和QQ群共享、QQ网盘、金山
快盘、115网盘等网络磁盘工具,互联网上的网络磁盘功能较全面、操作比较便
捷,用户通过上网登录系统的方式,可方便上传、下载文件,而独特的分享、分
组功能突破了传统存储的观念[3]。与其他同类产品相比,“网络磁盘”产品具有
直观预览、四级共享、分组管理、稳定安全的四大特点[4]。基本能满足人们对网
络文件的传输和需求,也受到了广大网友的欢迎;可是互联网上的磁盘对网络带
宽要求高、上传空间容量小的限制等问题;而U盘虽然传输速度快,但是却给
人带来了病毒及木马的侵害的痛苦,最终带来了意外的数据损失[5]。
1.3网络磁盘系统开发的目的和意义
该系统的开发是基于局域网、构建一个小区域网盘系统模型,并以解决现代
办公部门成员之间对数据资料的快速传输和交流及拥有大空间容量的需求为目
的,实现在局域网的100M以太网内上传速度高达10M/S的上传速度,而且空
间容量大而不受限制,可上传较大的多格式文件;并且设置内部访问权限,让该
部门内部的小部门拥有自己的团队空间,内部更好的更便捷的交流而不被非本团
队内的人员看到;超级管理员具有开设、冻结、删除、修改下级账号的权限、消
息公告等等。该系统提供部门间内部人员更快速、更便捷的分享图片、数据资料
上传和下载,使他们在互联网络中不受时间和空间的限制,只要在这个系统中的
用户都可以进行数据资料的共享上传、下载文件等操作,进入空间方便,界面更
简单明了;这也响应了互联网磁盘的直观预览、分组管理、稳定安全的三大特点
[6];更好的解决了QQ群共享、QQ网盘、金山快盘和115网盘等网络磁盘对带
宽要求高、上传空间容量小的不足;同时减少了U盘带了的病毒和木马的转染
及其在物理位置带来的不便,该系统的出现可以给部门办公成员带来极大的方
便,提高办公部门成员的工作效率,这也就是这个系统存在的意义。
1.4计算机网络模式的介绍
当今世界计算机网络的两大主流技术模式是客户机/服务器模式
(Client/Server,简称C/S)体系模式和Web浏览器/服务器模式(Browr/Server,
简称B/S)体系模式[7]。C/S是美国Borland公司最先研发的一项技术。C/S模式
是现在人们耳熟能详的一种技术,普通用户的计算机称为客户端,提供网络访问
3
的计算机叫服务器。它是基于软件系统的模式构架,通过它可以有效利用两端硬
件资源的优势,将客户申请的大量任务合理分配到Client端和Server端来完成,
大大降低了系统的通讯资源开销。B/S模式即浏览器和服务器模式,由美国微软
公司研发。它是随着Internet技术的快速发展,对C/S模式的一种变化或者改
进的模式。在这种模式下,用户工作界面是通过web浏览器来完成,较少部分
事务逻辑在前端(Browr)实现,但是大部分的事务逻辑还是在服务器端(Server)
实现,即形成了所谓三层结构。具体的说,首层为浏览器,次层为Web服务器,
第三层为数据库服务器[8]。浏览器是普通用户对数据的输入输出结果的交互界
面,用户输入数据,浏览器将表单数据提交并发送到Web服务器,Web服务器
应用程序接受并处理用户的数据并查询数据库中用户数据或把用户数据存入数
据库等。最终Web服务器将返回用户的结果插入HTML页面以浏览器的形式传
送到客户端。这给客户机电脑大大降低了工作负担,同时也减轻了维护成本和工
作量。
1.4.1C/S模式
C/S模式也就是Client/Server(客户机/服务器)模式。C/S模式是将任务有效分
配到客户端和服务器端,大大降低了系统的通讯开销。C/S是建立在局域网的网
络平台上,由客户机与服务器共同完成的二层结构网络平台模式,由客户端和服
务器端组成。C/S模式工作方式是客户端发出请求,服务器直接将客户端申请的
数据处理结果返回客户端的一种资源共享的工作方式。也就是客户工作站的应用
请求发送到数据库服务器,数据库服务器接受请求并对数据进行处理、最后把执
行结果传回给客户端。在这种模式下,服务器承担对数据库的全面管理和对系统
的控制中心。其优点是:具有一道完整的应用程序,具有很强的交互性;采用的
是局域网速度快,安全性较好;具有两层的逻辑结构网络通讯量小,没有过多的
占用资源[9]。
1.4.2B/S模式
B/S模式即是Browr/Server(浏览器/服务器)模式,采用三层结构,即:浏览
器、Web服务器、数据库服务器。
B/S模式是基于Internet/Intranet的结构模型,即客户端采用浏览器申请,中
间为web服务器,后台为数据库服务器的三层模式结构[10]。Web服务器的为该
模式的核心部分,主要负责接收浏览器的web页面请求和数据申请,并处理数
据请求通过数据库接口程序转换成数据库服务器能够接受的形式,最后发送到数
据库服务器,数据库服务器执行相应的数据库操作,将实行的操作结果通过数据
4
库接口程序的转换送回Web服务器,Web服务器将结果处理成浏览器能够实现
的形式,送回到发出请求的浏览器,并显示生成的结果。B/S具有的特点为:客
户端只需有浏览器,不需要客户端应用程序,减轻了管理负担,进一步提高系统
的可扩展性、安全性和可重用性[11]。B/S模式主要是利用了国际上不断成熟的互
联网浏览器技术,综合运用浏览器的多种嵌入式Script语言和ActiveX技术,原
来需要复杂专用软件才能实现的强大功能可以通用浏览器就能实现,这有效的节
约了开发成本,是一种较新型的软件系统构造技术。
1.5系统相关技术与环境简介
1.3.1采用的开发模型
以软件工程作为开发指导思想,拟用瀑布模型。
1.5.2PHP
PHP技术是一种运行于服务器端的网络编程语言,是用于开发动态Web应
用程序的有效工具。
1.PHP技术特点。
(1)PHP是免费的;
(2)语法简单,易学易用;
(3)面向对象编程能力强;
(4)支持众多网络协议;
(5)具有强大的数据库功能和丰富的函数库;
(6)移植性强,跨多个平台;
(7)执行效率高;
(8)可扩展性极强[12]。
2.PHP技术的工作原理。
PHP主要的功能是在Web环境下,由客户端浏览器传递一些信息给Web服
务器,再由Web服器去启动所指定的程序码来完成特定的工作[13],工作原理如
图1-1所示。
5
图1.1PHP的工作原理
用户通过Web客户端浏览器请求某个功能页面。Web服务器接受这个请求,
根据系统的逻辑设计,将这个请求对应的PHP文件读出,并交给PHP处理程序。
PHP处理程序解释这个文件,执行相应的处理过程,如数据库的访问与操作等。
PHP从数据库中取得数据后,将按照文件的要求,形成一个标准HTML页面。
将生成的HTML页面交给Web服务器。Web客户端浏览器将该HTML文件解释
执行并显示出来。这样就完成了一次客户浏览器端提出的某个PHP请求。由于
脚本在服务器上,而不是在客户浏览器端运行,传到浏览器上的Web页面是在
服务器上生成的,所以服务器端脚本不易被复制,用户看不到所要浏览页上的
PHP源代码,只能看到解释后的结果,这样就可以做到对源程序保密。
1.5.3Apache
Apache是因特网上使用很广泛的Web服务器,它通过、
和等三个文件来实现配置。其主要特征是:可以运行在所有计算机平台;
支持最新的HTTP1.1协议;简单而强有力的基于文件的配置;支持通用网关接
口CGI;支持虚拟主机;支持HTTP认证;集成Perl脚本编程语言;集成的代理
服务器;具有可定制的服务器日志;支持服务器端包含命令(SSI)支持安全Socket
层(SSL)用户会话过程的跟踪能力;支持FastCGI;支持JavaServlets。
1.5.4MySQL数据库
MySQL是基于SQL的客户/服务器模式的关系数据库管理系统,它具有功
能强大、使用简单、管理方便、运行速度快、安全可靠性强、多线程、跨平台性、
完全网络化、稳定性等优点,特别适用于Web站点或应用软件的数据库后端的
开发工作。另外,用户可利用许多语言编写访问MySQL数据库的程序。作为开
放源代码运动的产物之一,MySQL关系数据库管理系统越来越受到人们的青睐,
应用范围也越来越广。闻名遐迩的速度和易用性使MySQL特别适用于Web站点
或应用软件的数据库后端的开发工作。
6
1.5.5运行环境Windows7
Windows7中文全称为视窗操作系统体验版。是微软公司发布的一款视窗操
作系统。windowsxp发行于2001年10月25日,原来的名称是Whistler。微软最
初发行了两个版本,家庭版(Home)和专业版(Professional)。家庭版的消费对象是
家庭用户,专业版则在家庭版的基础上添加了新的为面向商业的设计的网络认
证、双处理器等特性。且家庭版只支持1个处理器,专业版则支持2个。由于计
算机的技术不断飞快发展,微软公司相继推出windows7,其中分有家庭版基础
版、家庭高级版、简易版、企业版、专业版、旗舰版等。
1.5.6XAMPP
XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建XAMPP软
件站集成软件包。这个软件包原来的名字是LAMPP,但是为了避免误解,最新
的几个版本就改名为XAMPP了。它可以在Windows、Linux、Solaris三种操作
系统下安装使用,支持多语言:英文、简体中文、繁体中文、韩文、俄文、日文
等。
1.5.7Dreamweave8
Dreamweaver是美国MACROMEDIA公司开发的集网页制作和网站管理于
一身的所见即所得网页编辑器,是一种可视化网页制作工具,利用它可以轻松地
制作出跨越平台限制和跨越浏览器限制的动态网页。
Dreamweaver可以开发HTML、XHTML、ColdFusion、ASP、、JSP
或PHP网站。通过平面设计工具以及代码提示、标签编辑器、可扩展色彩代码、
标签选择器、片段和代码检验这类编码特性来实现对代码和设计的管理。新集成
的工作空间可以与MacromediaFlashMX和FireworksMX预定入住,其中包括
了标示签的文档窗口、可放到Dock中的画板组、可定制的工具条和集成的文件
浏览。Dreamweaver还包括有预建的布局和代码,其中有网站结构、表格、可访
问的模板以及为客户端交互应用而提供的JavaScript。
Dreamweaver是建立Web站点和应用程序的专业工具。它将可视布局工具、
应用程序开发功能和代码编辑支持组合为一个功能强大的工具,使每个级别的开
发人员和设计人员都可利用它快速创建界面吸引人并且基于标准的站点和应用
程序。从对基于CSS的设计提供领先的支持到手动编码功能,Dreamweaver
在一个集成和高效的环境中为专业人员提供了所需的工具。开发人员可以将其选
择的服务器技术与Dreamweaver配合使用,建立将业主连接到数据库、Web
7
服务和旧式系统的强大Internet应用程序。DreamweaverMX组合了著名的可视
排版工具Dreamweaver、快速Web应用程序开发工具DreamweaverUltraDev的
功能和HomeSite的扩展代码编辑支持,形成了一个简单易用且功能强大的开发
环境。DreamweaverMX为当前的Web技术和标准提供完备而开放的解决方案,
包括辅助功能和Web服务。如下为其主要特点。
(1).方便的网站管理;
(2).无可比拟的控制能力;
(3).梦幻样版和XML;
(4).网站全方位的呈现;
(5).便捷安全的数据。
1.5.8EDITPlUS
EDITPlUS是一款功能强大的文字处理软件。它可以充分的替换记事本,它
也提供网页作家及程序设计师许多强悍的功能。支持HTML、CSS、PHP、ASP、
Perl、C/C++、Java、JavaScript、VBScript等多种语法的着色显示。程序内嵌网
页浏览器,其它功能还包含FTP功能、HTML编辑、URL突显、自动完成、
剪贴文本、行列选择、强大的搜索与替换、多重撤销/重做、拼写检查、自定义
快捷键,等等...
8
2需求分析
2.1可行性分析
可行性分析的任务是从技术上、经济上、社会上、法律上分析需要解决的问
题是否存在可行的解。
2.1.1技术可行性
该系统采用B/S模式设计,在局域网或互联网上运行。用户可以通过接入
internet的计算机,访问该网盘系统。本系统是一个比较普通的B/S模式的信息
发布系统,在技术上具有可行性。
2.1.2经济可行性
现在,计算机的价格已经十分低廉,性能却有了长足的进步。而本系统的开
发,为大家节约了大量的资源,为此主要表现有以下几个方面。
(1)本系统可以给部门带来更轻松、更便捷的网上信息交流;
(2)本系统可以弥现有网络QQ网盘、补现有的QQ网盘、金山快盘、115
网盘等网络磁盘工具对带宽要求高、空间容量小的限制;
(3)本系统可以较少U盘等对病毒及木马的传播;
(4)本系统的运行可以提高现代部门办公的工作效率。
所以,本系统在经济上是可行的。
2.1.3运行可行性
系统为一个小型的网络磁盘系统,所用的资源较小和运行环境要求较低,一
般的电脑或服务器无论是硬件还是软件都能够满足条件,因此,本系统在运行上
是可行的。
2.1.4法律可行性
该系统是为私人部门所设计的,在此过程中没有涉及合同、责任等与法律相
9
抵触的方面。因此,本系统在法律上是可行的。
2.2系统的需求分析
2.2.1实现系统功能的方式
需求分析的基本任务是准确回答“系统必须做什么?”这个问题,也就是确定
为了满足用户的需要系统必须实现什么功能。具体地说,我们在开发系统之前应
该确定系统必须具有的功能和性能,系统所需的运行环境,并且预测系统发展的
前景。需求分析阶段必须对系统的业务流程进行详细的分析,使业务流程进行抽
象化,最终得到系统的数据流分析过程。数据流图是从数据流动方向和加工的不
同角度对系统的数据和对数据进行描述处理,所以数据流图代表了系统的逻辑模
型。数据流图只是抽象地描述了系统的概貌,系统的具体功能图还要用其它工具
进行更详细的描述。其ER图是详细描述系统中的数据元素、数据存储、数据流、
处理和数据概念模型的好工具。通过业务流程图、数据流图、ER图等图形工具,
可以准确、规范地描述系统的需求。
2.2.2系统管理员的角色及功能
整个系统应该有两个操作用户角色,即超级管理员和普通管理员。
普通管理员只拥有一般用户的一些基本操作的权限,这些用户可一新建目
录、文件和删除已存在的目录、文件,同时也可以上传和下载文件、图片及软件
的共享,及对文件管理操作;在新建文件目录的同时可以设定访问权限,即可设
为共享、只好友可访问、不共享,在上传的时候如果是共享那么就显示到系统首
页,如果是只好友可见那么只有自己的好友才可以对文件进行下载访问,如果是
上传到不共享文件那么使自己的私有空间任何人都看不到;一般用户还可以查找
好友和添加好友,对好友发送消息及接收消息等。超级管理员拥有普通管理员一
样的权限外,还拥有用户管理的权限(可添加用户,为用户分配权限,也可删除
某个存在的用户或修改其信息,用户信息包括密码等)。超级管理员在后台对系
统进行用户管理,对数据进行统计分析,并展开系统的正常运行维护工作,超级
管理员可以发布消息公告以及建立好友链接。每个角色操作的共性是通过输入正
确的用户名,密码及四位彩色验证码后登录,进入不同的管理页面。角色工作完
成后,通过专门的出口退出登录状态。
10
2.2.3采用的技术
本设计采用B/S结构,综合运用以前所学的专业知识,设计开发一个功能较
完善的基于B/S的网盘系统,具体包括以下内容。
(1)研究并掌握局域网通信及文件检索的原理和实现方法;
(2)研究并掌握TCP/IP等传输协议、数据库操作等的基本原理;
(3)以前面的研究为基础,编程实现服务器及客户端内容共享与传输、实
现文件共享,目录检索、用户管理等功能;
(4)以软件工程作为开发指导思想,拟用瀑布模型;
(5)基于B/S构架模式;
(6)使用跨平台的PHP+Mysql数据库和APACHE服务器开发[14]。
2.2.4系统功能需求
1、用户管理。在该管理模块中包含有用户登录和登录验证;文件管理;目
录管理;文件下载统计等功能。
(1)用户注册和登录验证码,该功能是用户登进系统的必备条件,用户要
想在该系统中有一个权限空间,那就先对本系统进行注册,当注册成功之后系统
分配给该用户一个访问权限,使该用户可以在系统中完成普通用户的各项基本功
能。
(2)文件管理。即用户对文件夹的管理,该功能模块有创建文件夹,在创
建文件夹是用户还可以选择创建文件夹的类型,该类型有三种:一、共享给所有
人可见,分配这个文件类型的文件夹显示到系统首页让所有人可不需登录可以访
问;二、只好友可见,当分配这个文件夹类型时只有自己的好友拥有访问权限,
非好友的人没有访问权限;三、不共享,当分配这个文件夹类型是,里面的所有
文件都不共享给其他人。
(3)目录管理。该功能实现了用户上转的文件在系统中以目录列表的形式
显示在文件管理页面中;显示的目录简洁明了,让用户更方便、更轻松的对自己
的文件进行管理,还设置有目录刷新功能,这让上传的文件与好友、同事等同步
的共享及分享自己的文件。
(4)文件下载统计。该功能的设定也是为了更好地管理自己的文件,可以
轻松的知道自己的文件有多少人访问和下载,这也是给管理员到信息的通知有一
个叫体系的计数。
2、好友管理。该功能提供了用户更灵活、更方便、更亲密的交流空间,其
中用户可以添加系统中的用户为自己的好友,添加成功后在我的好友管理里面可
看到对方在好列表中显示;这给用户不受时间和空间的限制,随时随地的与好友
11
分享自己的快乐。
3、消息管理。数据流图也就是以图形的方式将系统中数据的传递方向、转
化过程更直观明了的方式描述出来。
2.3数据流程分析
数据流图由四种基本的元素组成:数据流(DataFlow)、处理(Process)、数据
存储和数据源(数据终点)。
(1)数据流(DataFlow):具有名称且有流向的数据,用标有名称的箭头来表示。
一个数据流可以是记录、组合项或基本项。
(2)处理(Process):表示对数据流进行的转换、加工和处理,在流图中一个节
点用圆形表示。指向处理的数据流为该处理的输入数据,离开处理的数据流为该
处理的输出数据.
(3)数据存储:数据以文件方式或数据库形式进行存储,对其进行的存取分
别以指向或离开数据存储的箭头表示。
(4)数据源及数据终点:表示数据的来源或数据的去向,可以是一个组织或
人员,它处于系统范围之外,所以又称它为外部实体,它是与系统有关的外部事
物或外部环境。根据上面的分析我们可以对系统画出如图所示的顶层数据流图,
如图2.1所示。
图2.1系统顶层数据流图
第1层数据流图如图2.2是在顶层上的细分,从整体考虑网盘系统出现的数据流。
12
图2.2系统第1层数据流图
2.4系统运行环境
CPU:IntelPentium(奔腾)双核*************
硬盘:320G
内存:4G
软件环境:Dreamweaver8、EditPlus
操作系统:Windows7
服务器:Apache
数据库:Mysql
13
3系统总体设计
经过前面的分析,已经确定了系统的基本功能,下面就是分析系统的总体框
架,分析系统处理的实体对象,实体间的联系,从而得到系统各种实体和联系对
应的数据表,最终设计出数据表。
3.1系统的总体框架
该系统由系统用户功能模块与超级管理员模块组成;其中系统用户功能模块
有用户账号、好友管理、邮箱管理、目录管理、文件管理组成,实现了用户基本
的功能需求,并提供一个文件存储空间;本系统还拥有一份更灵活的好友交流空
间即设定访问权限让系统提供用户拥组建一个团队,非本团队的人员无访问内部
文件的权限,给予他们随时随处与好友分享快乐的文件及图片;同时还可以设置
共享和不共享权限等。系统模块划分如图3.1所示。
图3.1网盘系统的系统结构图
14
超级管理员除拥有一般用户的权限之外还拥有分配用户的权限,删除、添加、
冻结下级用户账户,添加和删除管理员、发布消息公告及好友链接等功能,让该
系统有一个较全面的、统一的管理者,统一系统内部的管理,排除非内部人员的
进入。超级管理员模块如图3.2所示。
图3.2管理员功能图
3.2数据库设计
数据库设计是在既定(本系统使用Mysql)的数据库管理系统基础之上建立
数据库的过程。其过程是将现实存在的数据及其应用处理关系进行设计,从而形
成数据结构。具体实现过程中,首先应明确用户对数据的需求,在这个基础之上
上,建立一个总体的数据库模型,该模型主要是用来反映用户的现实环境和需求,
它是一个独立的数据库管理体系,并且与数据库如何实现没有关系,建立数据库
模型的主要工具为实体关系(E-R)图;在建立数据库模型之后,要真正实现与
数据库管理系统相结合,即能够支持既定的数据库管理系统,还必须进行一个较
详细逻辑结构的设计,在数据库逻辑设计阶段,主要完成创建数据库的逻辑模型
体系,并且解决数据在数据库中的完整性、一致性、安全性和有效性等问题;数
据库的最好设计阶段是对数据库的物理结构设计,其任务是提供系统逻辑结构模
15
型确定合理的存储结构、读取方法、数据表示、以及数据存储空间分配等内容,
从而得到完整的数据库结构。
3.3概念结构设计
经过对本系统各个流程的调查和分析使用实体关系(E-R)图进行系统数据库
的概念结构设计,建立起系统数据库的概念模型。如图3.3,图3.4,图3.5所示。
图3.3系统管理员表E-R图
图3-4系统用户表E-R图
系统管理员
用户名
密码
用户信息
注册时间
个人介绍
性别
是否为管理
员
ID
用户名
密码
真实姓名
文件路径信息
ID
文件名称
文件类型
创建时间
是否共享
16
图3-5文件路径信息E-R图
本系统的数据库设计总共包含管理员(admin)数据表、分类(categories)
数据表、好友(friend)数据表、消息公告(gonggao)数据表、链接(links)数
据表、文件列举(listfile)数据表、消息发送(msg)数据表、目录(mulu)数
据表、用户(urs)数据表,管理员(admin)数据表包过name、pwd即管理员
账号和管理员密码等属性组成,数据库分别对系统管理员的账户及密码的存储记
录,如表3.7所示。
表3.7存储记录
字段类型Null默认注释
idint(4)否0主键id
namevarchar(13)是NULL管理员帐号
pwdvarchar(50)是NULL管理员密码
分类(categories)数据表包含主键id、分类名称(name)、上级分类(reid)
等属性组成,数据库对用户上传的文件进行分类存储,如表3.8所示。
表3.8分类存储
字段类型Null默认注释
idsmallint(6)否主键id
namevarchar(50)否分类名称
reidsmallint(6)否上级分类id
好友(friend)数据表对好友信息属性进行记录,包含有用户名(uname)、
我的好友(friend)、添加时间(addtime)、类型(type)等属性,如表3.9所示。
表3.9好友信息属性记录
字段类型Null默认注释
idint(11)否
unamevarchar(50)否用户帐号
friendvarchar(50)否我的好友
addtimetimestamp否CURRENT_TIMESTAMP添加时间
typetinyint(1)否
消息公告(gonggao)包含新闻公告名称(title)、新闻公告内容(content)、
发布时间(time)等属性构成,如表3.10所示。
表3.10消息公告
字段类型Null默认注释
idint(10)否主键id
titlevarchar(50)否新闻公告名称
contenttext否新闻公告内容
timevarchar(50)否发布时间
17
链接(links)数据表主要记录好友分享的链接进行记录,如表3.11所示。
表3.11链接数据表
字段类型Null默认注释
idint(4)否
linknamevarchar(50)否友情链接名称
linkurlvarchar(100)否友情链接地址
文件列表(listfile)数据表主要对用户上传的文件进行记录及管理,存储在
一个数据表中提供用户读取文件、下载文件及管理文件,包含文件名(name)、
上传用户名(uname)、所属文件夹(delei)、类别(xiaolei)、权限级别(levels)、
文件路径(path)、上传时间(addtime)、类型(type)提供用户选择是否删除、
下载次数(downum)等属性组成;如表3.12所示。
表3.12文件列表数据表
字段类型Null默认注释
idint(11)否
namevarchar(200)否文件名称
unamevarchar(50)否上传用户
daleiint(11)否所属文件夹
xiaoleiint(11)否
levelstinyint(1)否是否共享
pathtext否文件路径
addtimedatetime否上传时间
typetinyint(1)否是否删除
midint(10)否
downumint(11)否下载次数
消息发送(msg)数据表主要是存储好友之间消息的发送及接收数据,提供
好友之间更好的消息交流,该表由接受者(name)、发送者(sname)、发送消息
名(title)、消息内容(content)、添加时间(addtime)等属性组成,如表3.13所
示。
表3.13消息发送数据表
字段类型Null默认注释
idint(11)否
namevarchar(50)否接受者
snamevarchar(50)否发送者
titlevarchar(150)否消息名称
contenttext否消息内容
addtimetimestamp否CURRENT_TIMESTAMP
目录(mulu)数据表是对文件目录管理及目录权限等数据的存储,提供用户
对文件目录的更简单明了的管理,包过目录名称(name)、所属用户(uname)、
18
目录权限(levels)、类型(type)等属性组成,如表3.14所示。
表3.14目录数据表
字段类型Null默认注释
idint(10)否
namevarchar(150)否目录名称
unamevarchar(50)否所属用户
levelsint(1)否0目录权限
typesmallint(1)否0
用户(urs)数据表对用户信息的管理,对用户权限的判别是否为管理员
分配相应的权限,对用户基本数据的存储,其包含用户名(name)、登录密码
(password)、真是姓名(truename)、邮箱(email)、是否是管理员(isadmin)、
性别(x)、个人介绍(about)、是否禁言(gag)、注册时间(cTime)等属性的
组成,如表3.15所示。
表3.15用户(urs)数据表
字段类型Null默认注释
idint(11)否
namevarchar(255)否用户名
passwordvarchar(255)否登录密码
truenamevarchar(255)否真实姓名
emailvarchar(255)否email
isadminint(1)否0是否管理员
xint(1)否0性别
sitevarchar(255)否网站主页
aboutvarchar(255)否个人介绍
gagint(1)否0是否禁言
cTimeint(11)是NULL注册时间
19
4详细设计
4.1系统前台设计
4.1.1系统首页设计
此次研究的对象是基于Mysql+PHP的网络磁盘系统,以B/S模式运行在
Apache服务的环境中。在本页面中用户可以直接下载系统用户分析其共享文件,
而看不到系统用户上传的只好友以及不共享的文件、图片等,在页面上为用户设
计了比较方便、快捷地访问共享文件,系统内部的上传的共享文件一目了然,不
需要登进系统即可访问,用户可以根据自己的需要按照目录、文件类型或文件名
称进行搜索而达到阅读文件的目的,这给用户节省了大量的时间,从而提高了工
作效率;此外,系统管理员还可以在本页面中发布消息公告,如可以发布简短通
知,通知本部门的某个成员等;用户可也更快捷的给其他人分享他的快乐学习文
件,让用户以更多的方式进入系统登陆页面;该系统的成员不仅可以拥有更方便、
更便捷的访问共享文件、多个进入登陆页面以及看到消息的公告之外,用户还可
以分享该页面中的友情链接,这个链接是由系统管理员发布的,如每个有用的网
站资源链接或投票等链接,用户都可不需要花费时间在网上查找;这些设计都是
为了提高部门内部人员办公的需求而设计的,即减轻操作上的繁杂、减少访问时
间,从而提高内部成员的日常学习、工作的效率。
4.1.2系统登录模块的设计
基于Web的网络硬盘管理系统的系统登录模块由系统主界面、用户登录和
管理员登录三部分组成,主要由以下文件组成。
(1):该文件是一个系统首页设计页面,用户可以选择进入用户登
陆页面、用户注册页面还是系统登录页面。
(2):该文件是系统用户登录页面的文件,在这个页面中用户必须正
确输入用户名,密码及验证码,完成用户的登录[15]。
(3):该文件是用户注册文件,及本部门内部的人员都必须在系统中
拥有一个用户才能进入系统内部,用户可以在该页面中申请用户。
(4):该文件系统管理员的登录文件,系统管理员必须正确出入用
户名及密码,完成管理员的登录。
20
(5):该文件主要完成与数据库的链接关系,可以通过改文件完成系
统对数据库进行数据的存储[16]。
(6):该文件完成用户登录时验证码的生成与显示。当用户要得
到系统页面的操作权限时,需先要判断该用户是否已存在系统中,如果用户不存
在则拒绝登录,用户可先注册在进行登录。系统根据不同访问权限进行各种信息
管理操作[17]。
4.1.3登录验证码的实现
验证码能有效防止暴力破解方式登录,即某一特定特定注册用户用使用特定
程序进行不断的登录尝试[18],实际中验证码已经广泛运用到我们的生活中(比如
各种银行的个人网上银行,各种用户系统的登录等),现在我用较简易的方式实
现这个功能。系统设有登陆及验证码虽然是麻烦了点,但是对整个系统安全性来
说这个功能还是比较重要的。
实现方法:当有用户要登进系统时,在输入用户名及密码之后需要输入的一
个必须选项,系统利用random函数随机产生四位数包含字母和数字,并把这些
字母及数字存入变量中,当用户点击提交按钮时,系统将自动判断验证码文本框
内的内容与存储变量中的内容是匹配。
4.1.4登录页面的设计
用户登录是用来验证用户的用户名及密码的,它包过登录名和密码及验证
码,当用户正确输入用户的用户名和密码及验证码是才能登进系统的用户管理界
面。
4.1.5用户注册
用户注册功能是为系统管理员减轻了部分工作量,即本部门的成员不需要管
理员手动为其添加用户,内部成员可自行注册在系统内部的一个访问权限,当用
户注册成功后即可在系统内部拥有一个自己的个人空间,即可上传、下载文件、
图片,添加好友,给好友发送消息等操作
。
4.2系统用户功能模块设计
4.2.1系统用户功能模块首页面设计
21
用户功能模块页面包含用户在本系统中的所有操作功能,其中包含有文件夹
管理,上传文件、文件管理、添加好友、我的好友、回收站、收件箱、发送信息、
修改个人资料、修改我的密码、退出系统等功能,该页面是每个用户正确登录后
就直接跳到的一个欢迎页面,登录到这个页面之后用户可以进行各项的用户功能
操作。
4.2.2文件夹创建及文件上传功能的设计
基于Mysql+PHP的数据共享技术的网盘系统的文件夹创建及上传传文件,由
,,,,,六个文件组
成。以下为文件上传的基本原理。
(1)遍历上面的所有文件;
(2)获取当前的文件夹及文件夹名分别存储在filename中;
(3)获取用户数据存储的路径并存在filepath中;
(4)判断该路劲是否存在,如不存在则就创建这个文件路劲;
(5)把数据存到上面创建的路劲存到数据库中,实际的文件被放到系统中
的Upfile文件夹下面[19]。
另外,创建文件夹还有访问文件夹权限的设置,即有共享、只好友可见和不
共享;共享则显示到系统首页所有人都可以访问;只好友则只有添加自己成功的
好友才可以访问,其他人无访问权限;不共享除了自己外其他人都没有访问的权
限;文件夹管理是起到显示已创建的文件夹,让用户更清楚的知道自己创建了那
些文件。
用户在上传文件是可以选择文件类型,即要将文件上传到那个文件夹中;文
件管理页面即时显示用户已上传的文件信息。
在PHP中,文件上传功能是使用PHP提供的文件函数来实现的。
首先通过客户端上传。创建一个文件,在浏览器中加载
文件,在没有经过UI设计时,其效果如4.1所示。
图4.1上转文件页面
22
要实现文件的上传,需要在表单标签中设置以下选项,以确保匿名上传文件
的正确编码。
Enctype="multipart/form-data"
在的编码中,其表单选项MAX_FILE_SIZE的隐藏值域,通过
设置Value值的大小可以限制上传文件的尺寸。当然,MAX_FILE_SIZE的值相
对于浏览器只是一个参考值,实际上它可以被轻易地绕过。实际应用中是通过在
PHP配置文件中设置上传文件最大值,来做上传文件的限制的[20]。在表单中加
上MAX_FILE_SIZE,可以及时发现上传文件尺寸过大的问题。
另外的服务端上传,需创建服务器端上传处理文件.其核心算法如
下:
<?php
$file=&$HTTP_POST_FILES['urfile'];//接收表单信息
$dest_dir='up';//设定上传目录
$dest=$dest_().$file['name'];
//设置文件名为时间加文件名,这样可有效避免重复
if(!$file){
echo"
exit();
}el{
$r=move_uploaded_file($file['tmp_name'],$dest);
//chmod($dest,0755);//设定上传的文件的属性
echo"
>
当文件上传成功后,系统会提示文件上传成功的信息。上面例子中
$_FILES['urfile']数组的内容含义如下所示。
$_FILES['urfile']['name']:客户端机器文件的原名称。
$_FILES['urfile']['type']:文件的MIME类型,例如“image/gif”。
$_FILES['urfile']['size']:已上传文件的大小,单位为B。
$_FILES['urfile']['tmp_name']:文件被上传后在服务端储存的临时文件名。
$_FILES['urfile']['error']:该文件上传相关的错误代码。
其中,错误代码的含义如下所示。
值0:没有错误发生,文件上传成功。
值1:上传的文件超过了中upload_max_filesize选项限制的值。
值2:上传文件的大小超过了HTML表单中MAX_FILE_SIZE选项指定
23
的值。值3:文件只有部分被上传。
值4:没有文件被上传。
PHP文件下载的原理及实现。通常文件下载过程是十分简单的,建立一个链
接指向到目标文件就可以了。例如下面的链接。
但是,实际情况可能会稍复杂。比如需要用户填写完整注册信息后才可以下载该
文件,这时最先想到的是使用Redirect的方式。下面介绍两种方式。(1)用
Redirect方式。先检查表格是否已经填写完毕和完整,然后将链接指到该文件,
这样用户就可以下载。请看下面的示例代码。
<?php
/*文件功能:检查变量form是否完整*/
If($form){
//重新定向浏览器指向
Header("Location:http:///");
Exit;
}
>
上述代码中,程序发送Header信息是用来告诉Apache和浏览器下载文件的
相关信息的。content-type的含义代表文件MIME类型是文件流格式。如果在
Apache配置里面把文件的MIME类型设为application/octet-stream(如add
application/),那么浏览器(客户端)就会知道,这是一个文
件流格式的文件并提示用户下载。Accept-Ranges是一个响应头标,它允许服务
器指明将在给定的偏移和长度处,为资源组成部分的接受请求,该头标的值被理
解为请求范围的度量单位。Content-Length是指定包含于请求或响应中数据的字
节长度,例如,Content-Length:382。Content-Disposition:attachment是用来告诉
浏览器,文件是可以当做附件被下载,下载后的文件名称为$file_name该变量的
值。运行文件。从图中可以看到文件按照预想的方式被提示下载,
单击“保存”按钮将文件保存在本地。
24
图4.2文件下载页面
用户创建文件夹及用户上传界面经过UI设计之后如图4.3,图4.4所示。
图4.3创建文件夹
图4.4文件管理页面
4.2.3好友管理功能设计
25
该功能模块主要实现了对好友的查询、添加、管理功能,使系统中的成员可
以创建自己的工作团队,这也满足了部门内部办公的需求,该内部还设有三个小
部门,实现了这个功能能更好的解决访问权限上的问题,让本团队中的东西不被
其他人可以访问到;该功能由friend_、friend_两个文件组成;好友
管理实现用户可对自己的好友进行添加和删除操作。
4.2.4消息管理功能模块
消息管理功能提供用户之间可以相互发送消息,实现了用户之间的更快捷、
更小范围的信息交互,让用户不受时间和空间的限制、随时随地都可以收到好友
发来的消息,这更好的模仿了腾讯QQ的邮件功能,虽然没腾讯那么的便利,可
是在局域网下面显出其快速的优势;消息管理页面则设置有消息发送及消息接收
功能,分别实现对好友发送消息和接受好友发来的消息。
4.2.5修改个人资料及密码功能
这两个功能实现了用户对自己的个人资料及密码的修改,即是让用户对自己
个人资料及密码的不满而进行的修改,可对自己的个人简要进行编辑。
4.3后台页面设计
4.3.1后台首页设计
当管理员以管理员的身份登进系统后系统会自动识别身份并且跳到后台的
管理页面,即是系统后台的首页面,在这个页面管理员拥有普通用户没有的权限,
可以对文件夹、用户、及系统的各项管理操作[21]]。功能图如下图4.5所示。
26
图4.5后台管理员首页
4.3.2管理员登录功能设计
本系统的后台是管理员权限所管理的;由、check_、
三个文件组成,他们实现管理员登录设计,登录身份的验证,以及
对身份的存储。管理员的登录需要管理员的账户(urname)和密码(password),
数据传入管理员表(admin)中进行识别,方法同会员登录相同。
4.3.3文件夹管理
文件夹管理功能主要是对用户所建立的文件夹进行管理,即管理员用户普通
用户所有的权限之外,还具有管理用户的权限,在这个功能界面中管理员可以直
观的看到用户所创建的文件夹的各种属性和所建的用户由文件实现,
并且还可以进行对其删除操作[22]。
4.3.4系统分类管理
在该页面中,管理员可以添加和删除系统设置的各种文件夹的分类功能;由
、class_、class_三个文件实现,文件是对分类目
录的创建(包含顶级目录和子目录),class_对分类的删除操作,
class_文件实现对分类的编辑操作。当管理员创建这些分类成功后,立即
显示到系统的首页和用户管理页面。
27
4.3.5用户管理
该部分由、ur_、ur_三个文件组成,显
示用户的所有信息在管理页面中,ur_实现对普通用户的删除,拉入黑
名单等,ur_查看用户信息[23]。功能结构图如图4.6所示。
图4-6用户管理页面
4.3.6消息公告
该部分由、gonggao_、gonggao_、gonggao_、
gonggao_五个文件组成共同实现了消息的建立、消息编辑、消息公告和
消息的添加和删除。该功能即是实现了管理员对系统内部人员的通知显示,显示
每天所要进行的通知等[24]。功能模块如图4.7所示。
图4.7消息公告管理页面
28
5系统运行测试
5.1运行
在本机装好Mysql数据库和Apache服务器和配置好运行环境,之后将系统
与数据库连接并修改相应连接参数,系统就可以在计算机上直接运行了。
5.2测试
在系统开发过程中系统运行的测试有着较重要的意义,不仅涉及到系统所设
计的各个功能的实现,而且还涉及到了系统的整体功能实现以及系统使用过程中
的稳定性。因此在运行测试过程中发现问题并不是一件坏事,这样才能更好的发
现问题,更好地去完善系统功能,如果不经过反复的对系统运行测试,即使功能
完全部实现,也是不完善的。
在软件工程中系统的运行测试是个很重要的环节,测试的目的是尽可能多的
发现潜在的可能问题,进而去更好地解决它,把一个较完善、高质量的系统提交
给用户[25]。在此我分别对每个模块进行分步测试,当每个模块的功能都实现之
后对系统的整体进行综合测试。
在大型软件系统开发的漫长过程中,面对着各种各样的错综复杂的问题,人
的主观意识不可能完全与客观现实相符合,因此,软件在运行周期的每个阶段都
可能出现错误的问题[26]。如果将系统软件交给用户使用之前,没有经过反复测
试并发现问题的存在,那么那些潜在的问题迟早都会暴露出来,到时不仅花费很
高的代价修改这些错误的代码,而且还可能会造成恶劣的结果。测试的目的就是
在软件交给客户使用之前,尽可能地发现问题及解决问题。
5.2.1.测试的目的
软件测试的目标和定义。
(1)测试是为了发现程序中的错误而执行程序的过程。
(2)好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案[27]。
在对本系统测试时,也正是基于上述观点来进行的。测试的目的不是证明系
统是完美的,而是发现问题,更好的解决问题,使系统不断完善,满足用户的需
求[28]。
29
5.2.2.测试的准则
为了能设计出行之有效的测试方案,必须深入理解并正确运用指导软件测试
的基本准则。下面列举主要的测试准则。
(1)所有的测试都应涉及和关联到用户需求。
(2)必须在测试之前作出相应的测试计划。
(3)对系统的各个独立的“小模块”测试开始,然后逐步对系统的“大模块”
测试。
(4)为了达到更好的测试目的,还应请第三方参与。
5.3测试的方法
测试任何产品都有两种方法:如果已经知道了系统应该具有的功能,可以通
过测试来检验是否每个功能正常使用;如果知道了系统的内部工作过程,可以通
过测试来检测系统内部动作是否按照说明书的规定正常工作[29]。前一种称为黒
盒测试又称功能测试,后一种方法称为白盒测试又称结构测试。在测试本系统时,
采用的是白盒测试来设计测试用例,而且在测试过程中,由于条件原因,不能完
全按照测试规则由第三方来测试,测试过程和方案设计由本人完成。
5.4测试内容
(1)系统界面能正常运行访问。
(2)用户登陆界面交友好,可操作性较好,能识别不同身份权限的登录,权
限不同拥有的管理权限不同,即访问的权限也不一样。
(3)Mysql数据库的可维护性好,数据的录入、删除及更改均能通过代码顺
利实现,并能与系统用户数据同步。
(4)数据查询方便,能执行各种不同的sql语句,并且能精确找到匹配的信
息。
(5)当操作过程中出现错误时,系统能够发出错误警报。
(6)软件对操作系统的兼容性较好,支持跨平台移植。
5.5测试结果
(1)在数据库及服务器都正常启动的前提下,系统可以正常访问操作界面。
30
(2)用户登录界面较友好,操作比较简单、便捷。
(3)Mysql数据库的可维护性较好好,能顺利完成数据的录入、读取修改、
删除及显示在系统页面中,还能实现数据的动态更新。
(4)用户非正常操作较多,系统记录相应的错误,有待进一步不断完善。
31
6总结
通过这次对网盘系统的分析与设计,使本人对基于Mysql+php的系统开发
有了更深入的了解,同时也掌握了很多系统开发过程中的很多知识,从中也总结
了很多经验。
6.1编写代码的经验
(1)页面命名规范。首先要写文档,并且每个页面要有名称标明,这对于系
统运行过程的维护方便。
(2)代码模块规范化。公共的模块要写在一起,因为每个子模块都会调用公
共模块中的函数,公共模块的编码也随着不断增加,函数后面的注释书也要详细
写好。
(3)代码实现过程中函数的规范管理。多次使用的函数要尽量放到公共模块
中,而不是写在自己想要的子模块中,这有益于系统的调用和管理。
6.2测试经验
(1)对于系统测试这个阶段来说,尤其重要的是测试逻辑上的问题。
(2)客户看不到系统错误原因,只能看到系统运行是错误的结果。
(3)测试是一个较泛型概念。测试不只是在完成之后的运行过程,而是遍及
在整个软件开发流程之中,有需求上的测试,设计上的测试,测试也需要审计系
统运行可行性的测试员,让系统能更好的完成测试阶段。
6.3遇到问题和解决的办法
在实际开发过程中,本人常遇到的错误是数据库操作、代码编写不正确、文
件找不到、语法错误主要是这几个方面。
(1)数据库的链接是访问数据源的第一步,也是最关键的一步。往往就在这
里出现了问题,通常提示数据库无法访问和连接错误;这种的解决办法通常是数
据库链接的用户名及密码输入不正确,或者没添加系统中有的相应的空格符特殊
字符,改回来就可以了。
32
(2)代码编写不正确也是导致系统不能正常运行的因素,由于编写代码是一
个较漫长的事情,通常要写很多,有时一个单词不正确导致系统不能正常运行,
所以当遇到500之类的错误时,可先找到是否有代码上的错误。
(3)文件找不到,也就是通常所遇到的404错误,这个问题通常是路径不正
确导致的,出现该问题通常检查系统中是否存在要访问的文件
(4)语法错误也是很常见的问题,不管是哪种编程语言都会有各种各样的语
法,虽然大体上是相同,但是还是会有区别,出现这种错误一般要检查自己所用
的函数及语句是否正确,改过来即可。
在系统开发过程中我学到了许多的知识,同时也存在很多不足之处:首先是
系统主页的页面结构不够美观,但由于技术上的原因,对结构框架的掌握不够深
入以及时间的有限性,本人只能开发出一个较良好的主页面。其次,对注册成员
的注册还没有单个用户数量的限制。第三,本系统的只好友功能方面也没有达到
QQ群那样的信息限制范围。本系统中还有系统上的漏洞及很多细节上的问题没
有得到充分的考虑,是系统在今后的使用中存在一定的问题,但这些不足之处,
还有待于今后继续的学习并解决,这次毕业设计的制作,不是设计这个系统的结
束,而是不断的学习新的知识并运用到实践中的一个开始。
33
致谢
大学生活即将过去了,回首过去这几年的学习、生活时光,我感慨不已。
在学校的学习生活中,我不仅对软件开发知识有了深刻的了解,还对信息管理系
统等相关知识有了更深层次的了解。人生不在于是否走了一条让他人羡慕的道
路,而在于这条路上是否迎来更多的欢歌笑语。
在此期间,帮助过我的老师、同学有很多,感谢我的指导教师谢坤武老师,
是他的指导,帮助和肯定,才使我得以顺利的完成毕业设计及论文。同时也祝所
有老师工作顺利,合家欢乐!
与此同时,还感谢宿舍所有舍友的几年来对我学习、生活的关心和帮助。
感谢我的家人,有你们的大力支持支持是我前进的最大动力,焉得谖草,言
树之背,养育之恩,无以回报,你们永远健康快乐是我最大的心愿。感谢湖北民
族学院给我提供了一个很好的学习环境,感谢这里的领导和老师对我的帮助,感
谢在这里一起并肩作战的同学们。最后感谢我的母校——湖北民族学院对我的大
力栽培。衷心地感谢你们!
34
参考文献
[1]闫菲,《软件工程》,中国水利水电出版社,2001
[2]胡菘,《Dreamweaver完美网页设计》,中国青年电子出版社,2005
[3]赵启志,《PHP4+MySQL完整自学方案》,中国铁道出版社,2001
[4]陈俊宏,《MySQL网页数据库设计》,人民邮电出版社,2000
[5]仲进平,《PHP4+MySQ网络开发技术》,人民邮电出版社,2000
[6]王珊,《数据库系统概论》,高等教育出版社,2002
[7]李宇,《JavaScript网页特效实例解析》,机械工业出版社,2003
[8]尚俊杰《PHP程序设计》清华大学出版社/北京交通大学出版社2004.4
[9]微软公司《使用软件工程方法》高等教育出版社2005.8
[10]张俊、乔宇峰、周欣《PHP程序设计入门》吉林电子出版社2005.2
[12]金雪云《PHP简明教程(PHP篇)》清华大学出版社2006.1
[13]php外文原文和译文----AccessingMySQLUsingPHP2007.3
[14]刘波.关于B/S和C/S架构的探析.2008.6
[15]基于Web和数据库的网络管理系统的设计与实现.软件学报,2004.11
[16]万常华,柃传繁﹒数据库应用[M]﹒北京:中国商业出版社,2000:43-66.
[17]孙印杰,马子彦,郭利国等﹒网页设计应用教程[M]﹒北京:电子工业出版社,2006:88-150.
[18]张敬,宋广军,赵硕,王睿﹒软件工程教程[M]﹒北京:北京航空航天大学出版
社,2003:120-160.
[19]数据库开发技术宝典丛书编委会﹒SybaEnterpriSQLServerManager[M]﹒北京:北
京希望电子出版社,2000:40-56.
[20]s﹒DatabaAdministrationTheCompleteGuidetopraticesandprocedures[M]
﹒北京:电子工业出版社,2003:33-55.
[21]新编网页制作教程编委会﹒新编网页制作教程[M]﹒西安:西北工业大学出版
社,2002:225-350.
[22]程志艳,张亮,马建红﹒PHP实用简明教程[M]﹒北京:清华大学出版社,2006.10-391.
[23]吴其庆﹒动态网站设计教程[M]﹒北京:冶金工业出版社,2005:121-201.
[24]柏亚军等﹒编程基础及应用实例集锦[M]﹒北京:人民邮电出版社,2001:45-245.
35
[25]杨文龙,姚淑珍,吴云﹒软件工程[M]﹒电子工业出版社,1997.
[26]蔡剑,景楠.JavaWeb应用开发:J2EE和Tomcat[M].北京:清华大学出版社,2005.9.
[27]袁鹏飞.中文版SQLServer2000数据库系统管理[M].北京:人民邮电出版社,2001.
[28]Microsoft公司.MicrosoftSQLServer2000数据库编程[M].北京:希望电子出版社,2001.
[29]朱少民.软件测试方法与技术[M].北京:清华大学出版社,2005.
36
声明
本人郑重声明:
1.此毕业论文是本人在指导教师指导下独立进行研究取得的成果。除了特
别加以标注地方外,本文不包含其他人或其它机构已经发表或撰写过的研究成
果。对本文研究做出重要贡献的个人与集体均已在文中作了明确标明。本人完全
意识到本声明的法律结果由本人承担。
2.本人完全了解学校、学院有关保留、使用学位论文的规定,同意学校与
学院保留并向国家有关部门或机构送交此论文的复印件和电子版,允许此文被查
阅和借阅。本人授权湖北民族学院可以将此文的全部或部分内容编入有关数据库
进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本文。
3.若在湖北民族学院毕业论文审查小组复审中,发现本文有抄袭,一切后
果均由本人承担,与毕业论文指导老师无关。
学位论文作者(签名):
年月
37
本文发布于:2023-03-03 05:34:45,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/1677792885119507.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:qq群共享.doc
本文 PDF 下载地址:qq群共享.pdf
留言与评论(共有 0 条评论) |