考勤系统安全性实现PHP+SQL论文

上传人:a**** 文档编号:142012205 上传时间:2022-08-24 格式:DOC 页数:35 大小:551.50KB
收藏 版权申诉 举报 下载
考勤系统安全性实现PHP+SQL论文_第1页
第1页 / 共35页
考勤系统安全性实现PHP+SQL论文_第2页
第2页 / 共35页
考勤系统安全性实现PHP+SQL论文_第3页
第3页 / 共35页
资源描述:

《考勤系统安全性实现PHP+SQL论文》由会员分享,可在线阅读,更多相关《考勤系统安全性实现PHP+SQL论文(35页珍藏版)》请在装配图网上搜索。

1、第一章 概 述1.1 PHP的概念PHP: Hypertext Preprocessor (超文本预处理器) 的缩写,它是一种效劳器端的 HTML 脚本/编程语言,是一种简单的、面向对象的、解释型的、健壮的、平安的、性能非常之高的、独立于架构的、可移植的、动态的脚本语言PHP是一种功能强大的脚本语言。PHP将击败PERL/Python并取而代之。PHP是下一代的PERL/Python脚本。PHP可以胜任任何PERL/Python做的工作,并且做的更多,更好,更简洁! 1.2 PHP在网络编程方面的优越性1995年时,Rasmus在用PHP写他的个人主页;今天,PHP成为风行全球的脚本语言,越来

2、越多的站点选择使用PHP,连Yahoo都放弃了自己的脚本而改用PHP支持它的网站。可以说,PHP是一个奇迹。我一直认为,任何奇迹背后都有它的原因。现在,就让我们透过这个奇迹,来看看PHP的成功之道。1 简单易用PHP的入门门槛很低,它对使用者的要求微乎其微。学过C语言的人,使用PHP几乎不需要什么时间。它们的语法是如此相似,以至于我常常想,是不是在C语言变量前加个$就能改成PHP。这使得大量C程序员在网络脚本中选择了PHP。另外,比起ASP的组件系统和Java庞大的类库来,PHP的函数库要好学多了。在编程风格上,PHP更是自由,你可以使用N种风格来写你的脚本程序。这些特性使得PHP成为初学者的

3、首选语言。抢占初学者市场是很重要的策略。如同任何人都会对自己的初恋记忆犹新一样,人们往往会对最初学习的语言有很深的感情。即使后来自己成长了,改用其他语言了,还是会时时记起最初学习的语言。在这点上,PHP做得很出色。2 剪裁得当PHP开发组是最了解网络的一群人,他们非常清楚用户要的是什么。PHP就是要做一个出色的网络脚本语言,而且,它只是要做一个网络脚本语言。PHP提供的函数集在网络方面相当强大,而且重点均专注于网络应用。像PHP中的无组件文件上传,超多数据库支持等特性都表现出这个特点。顺便说一句,PHP甚至支持ACCESS数据库。专注使得PHP在网络上表现出极其优秀的性能。有失才能有得。3 支

4、持强大PHP有强大的OpenSource团体支持,在网络上有数以万计的开源代码。你可以整合几个现有程式来实现你的应用,也可以分析大师级的代码来得到提高。PHP还有很多扩展性的工程来增强PHP在某个方面的功能。像注重编程标准化和代码重用的PEAR,提供可编译模板技术的Smarty,甚至开发桌面程序的GTK。分析完这几个理由,我们可以看出,PHP的成功得益于PHP开发组的战略眼光。PHP提供了一个最小工作集,使用户能用最简单的方式高效地完成自己需要的应用。这正是初学者需要的。然后它通过方便的扩展来提供各个方面的解决方案,这样,你只需要学你要用到的那个领域的东西。当你涉及的领域越来越多时,你的水平也

5、随之提高,当你熟悉了大多领域时,回头看看,会发现不知不觉已到山腰。PHP也提供了我们一种学习态度。1.3系统开发环境一、 操作系统Windows xp本系统使用的操作系统为Windows xp作为底层操作系统,界面友好,性能稳定。二、 数据库MYSQLMySQL是一个真正的多用户、多线程SQL数据库效劳器。SQL结构化查询语言是世界上最流行的和标准化的数据库语言。MySQL是以一个客户机/效劳器结构的实现,它由一个效劳器守护程序mysqld和很多不同的客户程序和库组成。SQL是一种标准化的语言,它使得存储、更新和存取信息更容易。例如,你能用SQL语言为一个网站检索产品信息及存储顾客信息,同时M

6、ySQL也足够快和灵活以允许你存储记录文件和图像。MySQL主要目标是快速、健壮和易用。最初是因为我们需要这样一个SQL效劳器,它能处理与任何可不昂贵硬件平台上提供数据库的厂家在一个数量级上的大型数据库,但速度更快,MySQL就开发出来。自1996年以来,我们一直都在使用MySQL,其环境有超过40个数据库,包含10,000个表,其中500多个表超过7百万行,这大约有100个吉字节(GB)的关键应用数据。MySQL建立的根底是业已用在高要求的生产环境多年的一套实用例程。尽管MySQL仍在开发中,但它已经提供一个丰富和极其有用的功能集。三、 务器平台APACHEApache 伺服器那么是目前最多

7、 WWW 网站所采用伺服器。您可以至 下载最新版的程式及相关文件,假设您觉得从国外下载要很久的话,也可以用它的 Mirror 站台下载。 PHP 那么可以去它的官方网站 下载所需要的程式。 虽然目前 WindowsNT 或者 Windows98 等 Win32 的作业平台也能安装 PHP 及 Apache 伺服器,不过这似乎没什么道理,因为 PHP 和 Apache 在 UNIX下可以跑得更快更好。 当然,假设想使用商业化的作业平台,SUN、IBM、HP、DEC、SGI、NEC 等公司都有提供相关的 UNIX 或者是 WindowsNT 的作业平台。加上高平安性调整过后的 Apache 伺服器

8、:Stronghold 或是其它支援 SSL 的 Apache 版本。这种组合,相信能满足商业化的需求。而 PHP 就扮演着快速方便的 CGI 角色,让客户对站台的效劳品质更加满意。四、 发语言PHPPHP是一种简单的,面向对象的,解释型的,健壮的,平安的,性能非常之高的,独立于架构的,可移植的,动态的脚本语言。PHP具有和JAVA类似的Class关键字。因为不需要虚拟机,以致速度比JAVA快5倍。PHP正迅速变成一种标准的,多用途的,面向对象的脚本语言。PHP不仅可用来开发Web应用程序,也可以开发普通应用程序。 PHP是一种功能强大的脚本语言。PHP将击败PERL/Python并取而代之。

9、PHP是下一代的PERL/Python脚本。PHP可以胜任任何PERL/Python做的工作,并且做的更多,更好,更简洁! PHP是Hypertext Pre-Processor超文本预处理器的缩写,它是一种效劳器端的HTML脚本/编程语言。PHP语法上与C相似,可运行在Apache, Netscape/iPlanet, 和 Microsoft IIS Web 效劳器上。PHP作为一种工具,可以让你创立动态的Web页面。应用PHP的网页与常规的HTML页面并无二致,你可以用同样的方式来创立、编辑它们。PHP允许你直接在HTML文件里写入简单的脚本,这一点与Javas cript非常相似。而不同

10、的是,PHP不依赖于浏览器,是效劳器端的语言,而Javas cript却是一种客户端的嵌在HTML中的语言。概念上,PHP与Netscape的LiveWire Pro产品,Microsoft的ASP以及SunMicrosystem 的JSP相似。 PHP不仅可以用来创立Web应用程序,也可以用来开发普通的单机应用程序。 PHP的强劲之处在于: PHP是一项最优秀的技术。其它技术,如PERL,Python, Tcl, VB s cript, ASP 相对来说,都是陈旧低劣的。即使是Java/JSP,也在PHP之下。 开放源码 广泛的数据库连接 大量的扩展库 作为一种多用途的脚本语言,比PERL,

11、VB s cript, ASP, JSP都要优秀第二章 系统的需求分析2.1 系统需求分析需求分析的根本任务是准确的答复“ 系统必须做什么?这个问题。在需求分析这个阶段,需要仔细的研究系统所实现的功能,并进一步将他们具体化。1任务概述u 目标将学生考勤、平时成绩的评定、以及成绩查询的大量业务,用计算机系统操作完成,对它进行全面现代化管理,以便提高信息管理效率。u 运行环境软件:Microsoft Windows 2000 Server及Windows 2000 SPI 或更高版本 IE5.5以上硬件:64 MB RAM 鼠标或其他定点设备u 系统要完成的任务 实现学生平安登录 实现网上签到 通

12、过技术手段,防止学生冒名签到。 统计学生平时成绩。 实现网上成绩的查询。2.功能需求系统必须完成的功能包括:c 注册与登录功能该功能主要实现学生与老师的平安登录。c 签到功能该功能主要实现学生上课网上签到,以减少老师点名签到的时间,提高上课效率。 c 统计功能系统中的统计功能可以根据学生签到次数,统计学生的平时成绩。c 查询功能该功能从不同的角度进行查询,多层次地满足老师及学生对总成绩及个人成绩的查询要求。2.2 总体设计 1本课题研究的内容本论文从网站设计的根本原理出发,使用php+mysql技术,PHP是一个类似微软ASP的效劳器端的嵌入式超文本处理语言,是建立动态网站的强大工具。MySQ

13、L是一个真正的多用户、多线程SQL数据库效劳器。MySQL是以一个客户机/效劳器结构的实现,它由一个效劳器守护程序mysql和很多不同的客户程序和库组成。由于其源码的开放性及稳定性,且与网站流行编徎语言PHP的完美结合,现在很多站点都利用其当作后端数据库,使其获得了广泛应用。而MySQL是一个轻型SQL数据库效劳器,可运行在多种平台上,包括Windows NT和Linux,它还有一个GPL版本,MySQL被认为是建立数据库驱动的动态网站的最正确产品。PHP、MySQL和Apache是Linux平台网站的最正确拍档。通过对公共课网上系统的分析、设计与具体实施,从而具体介绍了基于Internet/

14、Intranet的网站应用系统的分布式架构模式及实现机理。最后采用了PHP+MYSQL,设计并实现了公共课网上系统系统设计模型2此系统共分为六个较大的模块:一. 注册模块 二. 身份验证模块 三.学生查询模块 四、学生签到模块 五、教师控制台模块 六、学生出勤统计模块 在这七个模块当中共完成19项功能,分别如下:(一) 注册模块i. 新用户注册教师或学生ii. 用户登陆教师或学生登录界面Index.php教师注册t_signup.php学生注册s_signup.php教师身份验证t_infor.php学生身份验证s_infor.php 图2-1 流程示意(二) 身份验证模块i. 教师注册身份验

15、证ii. 学生注册身份验证iii. 答复信息库中的个人信息 超级用户管理模块s_answer.php通过验证 s_success.php验证失败 s_fail.php图2-2 流程示意(三)学生查询模块iv. 用户输入学号v. 用户出勤信息查看学生查询模块s_infor.php查找s_infor.php数据库查询结果sss_infor.php图2-3流程示意(三) 学生签到模块i. 个人信息提取ii. 签到结果查看学生信息显示ss_infor.php填加信息ss_infor.php数据库插入信息s_infor.asp图2-4流程示意四教师控制台模块iii. 开始学生签到iv. 停止学生签到v.

16、 查看本次签到信息 教师控制台t_infor.php开始签到数据库停止签到流程示意图2-5五师期末统计模块vi. 统计专业vii. 统计年级viii. 点名次数ix. 每次点名分数学生出勤统计模块last.php统计输入输入界面Last.php统计查看界面Tttlast.php流程示意图2-6学生表间关系 主键签到信息表出勤统计表教师注册信息表学生信息表学号姓名性别年龄学历政治面貌专业 家庭地址母亲名父亲名爱好年级学号姓名专业用户帐号用户密码学号姓名专业出勤次数缺席次数平时分学号姓名专业年级签到时间签到主机图2-7教师信息表编号姓名性别年龄专业学历政治面貌 毕业院校家庭地址母亲名父亲名爱好教师

17、注册信息表表编号姓名用户帐号用户密码图2-8 第三章 设计与实施3.1系统数据库设计表1 学生信息表s_infor中文名称字段类型Null默认学号s_sno varchar(10)否姓名s_name varchar(20)否性别s_sex varchar(2)否学历s_xueli varchar(10)否政治面貌s_mianmao varchar(10)否专业s_pro varchar(30)否 s_pho varchar(11)否家庭地址s_addr text否母亲名s_mname varchar(20)否父亲名s_fname varchar(20)否爱好s_love varchar(30)

18、否年级s_gra varchar(50)是NULL表2 教师信息表t_infor中文名称字段类型Null默认编号t_sno varchar(10)否姓名t_name varchar(20)否性别t_sex varchar(2)否专业t_pro varchar(30)否学历t_xueli varchar(20)否政治面貌t_mianmao varchar(10)否 t_pho varchar(11)否毕业院校t_gra varchar(30)否家庭地址t_addr text否母亲名t_fname varchar(20)否父亲名t_mname varchar(20)否爱好t_love varcha

19、r(30)否表3 学生签到信息表s_login中文名称字段类型Null默认学号s_sno varchar(10)否姓名s_name varchar(20)否专业s_pro varchar(30)否年级s_gra varchar(10)否签到时间s_time date否0000-00-00签到主机ip text是NULL表4 学生注册信息表s_signup中文名称字段类型Null默认学号s_sno varchar(10)否姓名s_name varchar(20)否专业s_pro varchar(30)否用户帐号s_zh varchar(10)否用户密码s_pasw varchar(16)否表5

20、教师注册信息表t_signup中文名称字段类型Null默认编号t_sno varchar(10)否姓名t_name varchar(20)否用户帐号t_zh varchar(10)否用户密码t_pasw varchar(10)否表6 学生出勤统计表Statistic中文名称字段类型Null默认学号num varchar(11)是NULL姓名name varchar(30)是NULL专业pro varchar(40)是NULL出勤次数pre_times varchar(20)是NULL缺席次数absen_times varchar(20)是NULL平时分scores varchar(20)是NU

21、LL表7 签到控制表t_control中文名称字段类型Null默认标志位falg char(2)是NULL表8 替名签到信息查看表(t_view)中文名称字段类型Null默认学号s_sno varchar(10)否姓名s_name varchar(20)否专业s_pro varchar(30)是NULL年级s_gra varchar(20)否签到时间s_time date否0000-00-00签到主机s_ip text否3.2系统根本流程1.注册1下面是学生注册页:图3-12学生注册验证页:通过提出随机问题,实现用户平安注册。防止他人注册。图3-2如果问题答复正确,显示“您已成功通过验证 返回

22、主页。如果问题答复错误,显示“请仔细检查您确实认密码和学号是否正确。如果帐号已被注册,显示“此用户帐号已经被注册了,您无法再次进行注册。2登录1用户登录页图3-3注册后,系统将用户的帐号和密码插入数据库,用户正确输入帐号和密码,即可登录。假设输入的帐号和密码不正确。显示“你输入的帐号或密码不正确,请重新输入。教师登录,进入教师控制台图3-4学生登录如果教师点击开始签到,学生登录进入签到页。如果教师点击停止签到,学生登录进入成绩查询页。3签到1学生签到页图3-5通过ip防止冒名签到,限定每个ip再同一节课只能有一个人签到,并且通过对时间的限制防止同一人在同一节课屡次签到。2冒名签到页 如果有人冒

23、名签到,教师可以在冒名签到页中查看到,IP地址出现相同的,证明学生曾试图在一台电脑上给两个人签到。图3-64统计每签到一次,系统记录在数据库中。期末教师输入每次签到的分数, 分数*统计次数=平时成绩图3-75.查询教师输入专业,查询整个专业的成绩。图3-86学生输入学号,查询个人的成绩。图3-93.3系统主要功能模块的实现下面将对以上六个模块中的14项功能的实现做具体详细地阐述。二主要功能:(1) 新用户来访须知,简介系统将为用户提供本系的根本介绍;(2) 新用户注册,为新用户建立一个信息输入环境,同时系统将保存新的用户个人资料;(3) 检验身份,是用来检验用户的身份,防止别人冒名注册;三 实

24、现方式u 用户初访须知:这是一个版面,即告诉每一个新来到本系统访问的用户,怎样进行注册,能让学生和老师一目了然,正确注册个人信息。我在这里用一个名称为index.php的页面来简单地介绍了本系的一些概况和信息。第一, 选择自己的身份,老师或者学生第二, 登录用户名和登录密码为进入系统的必添资料第三, 如果没有进行注册,需在这里进行注册u 新用户注册:这是一个为新用户提供输入个人资料的界面窗口,同时,根据学校信息库的特点,为每一个用户设计了准确的个人信息。在这里这些个人资料将输入到数据库(ts_signup)中的用户记录表(t_singup或s_signup)当中。在设计过程当中,使用了t_si

25、gnup和s_signup两个文件来完成此项功能,它们的执行步骤如下:教师填写如下个人资料(t_signup.php)填写工程填否填写说明教师编号必填用户名称不能少于2个字符。建议:请用英文和数字键真实姓名必填用于老师之间相互识别密码必填最少六位数字或字母 确认密码必填验证信息正确性学生填写如下个人资料(s_signup.php)填写工程填否填写说明学号必填用户学号11个字符。真实姓名必填用于学生之间相互识别专业必填用于学生之间进行相互区分密码必填最少六位数字或字母密码必填最少六位数字或字母确认密码必填验证信息正确性(四) 程序解析:(1) 学生用户注册s_signup.php:在此系统当中,

26、自始自终都是以php技术当中效劳器的表单变量作为操作的标识,而且,在不同的功能当中,通过它来实现参数的传递,完成特定的功能。系统只有通过它才能调用,但我们可以对使用的系统变量进行定义和初始化,具体实现如下:$s_sno 为学生的学号,在这里它是唯一可以标示某一个人的身份; $s_name 注册者姓名; $s_pro 注册者专业$s_zh 注册者帐号;$s_pasw 注册者密码;$textfield 注册者确实认密码 页面进行分析:i. 用户个人资料填写(s_signup.jsp)在此页面当中,主要由两局部组成,一局部是显示输入信息界面,另一局部为函数控制局部,由javascript语言实现。f

27、unction sub()语句主要是控制注册者填写的内容不能为空。例如下:function sub()if(document.form1.s_name.value=)window.alert(请填写你的登录名!);window.form1.id.focus();return false;if(document.form1.s_pasw.value=)window.alert(请填写密码!);window.form1.pwd.focus();return false;余下的内容为HTML的设计页面。例如下:关键的语句在与取得表单输入信息,语句如下: ii. 注册表单输入(s_answer.php

28、)在此页面,主要完成数据向数据库中的操作:选择数据库表s_signup,填加一条记录,即新用户生成,返回主页面。重名用户的控制,即注册用户的用户名称如果在系统中存在,那么将返回信息告诉用户重新填写用户名称。实现此功能,首先,从数据库中确认申请的用户名称是否重复,代码如下 0)echo 此学号已经被注册了,您无法再次进行注册;else mysql_select_db($database_conn, $conn);$query_Recordset2 = SELECT * FROM s_signup where s_sno=$s_zh;$Recordset2 = mysql_query($query

29、_Recordset2, $conn) or die(mysql_error();$row_Recordset2 = mysql_fetch_assoc($Recordset2);$totalRows_Recordset2 = mysql_num_rows($Recordset2);if($totalRows_Recordset20)echo 此用户帐号已经被注册了,您无法再次进行注册;其次是将数据输入输入库中:$insert_query=insert into s_signup values($field1,$field2,$field3,$field4,$field5); mysql_qu

30、ery($insert_query, $conn);3 身份验证模块一 主要功能(1) 防止他人冒名注册个人帐户;(2) 不同的用户具有不同的管理功能(3) 输入成功后,具有返回的功能;二实现方式u 身份验证$row=mysql_fetch_row($Recordset1); $i=mt_rand(7,11); if($i=7) print 请准确答复你的 号码 ?; else if($i=8) print 请准确答复你的家庭地址 ?; else if($i=10) print 请准确答复你的父亲名 ?; else if($i=9) print 请准确答复你的母亲名 ?; else if($i

31、=11) print 请准确答复你的个人爱好 ?;$field=$row$i;$field1=$s_sno;$field2=$s_name;$field3=$s_pro;$field4=$s_zh;$field5=$s_pasw; else header(Location:s_fail.php);? 成绩输入存储模块cjsr_ok.jsp第一,查找的信息不能为空,否那么视为无效。第二,连接数据库(chengji),输入信息。如果有信息正确,写入。代码如下:String asql=SELECT * FROM chengji where id=+id+;ResultSet RS=connben.e

32、xecuteQuery(asql);(id,name,rgzn,hbyy,jkjs,sjjg,sjksj,java,xhxt,dmtjs) Values(+id+,+name+,+rgzn+,+hbyy+,+jkjs+,+sjjg+,+sjksj+,+java+,+xhxt+,+dmtjs+);u 成绩修改输入模块cjsrup.jsp第一, 输入要修改学生的学号和姓名等待系统确认后,将进入修改主页面。第二,将要修改是成绩输入到表单中,由表单提交到数据库中。name=id 为了建立不同的纪录而设定的代号,在这里它是唯一可以标示某一个学生的身份; name=pwd 学生密码; name=rgzn

33、代表课程人工智能;name=hbyy 代表课程汇编语言 name=jkjs 代表课程接口技术;name=sjjg 代表课程数据结构;name=sjksj 代表课程数据库设计;name=java 代表课程java语言;name=xhxt 代表课程信号系统;name=dmtjs 代表课程多媒体技术;function sub()定义到表中姓名和学号不能为空。例子如下:function sub()if(document.form1.id.value=)window.alert(请填写你的学号!);window.form1.id.focus();return false;4学生查询模块一主要功能(1)

34、查询功能是面向全体用户的查询功能;(2) 查找的对象主要包括数据库中签到信息表s_login中的全部内容。(3) 查找对象与数据库匹配的字符,如不相符不予以查找。(4) 查询的结果显示在查询结果页面sss_infor.php上。二实现方式u 成绩查询模块(sss_infor.php) 查找学生学号sss_infor.php第一, 要求输入学生的学号,这局部由标准的HTML代码生成;第二, 关键的语句在与取得数据库信息,语句如下:。u 显示成绩模块sss_infor.php第一, 连接数据库,查找信息。如果有正确的信息显示出来 mysql_select_db($database_conn, $c

35、onn);$query_Recordset1 = SELECT * FROM s_login where s_sno=$field ;第二, 把要显示的信息输入出来 $maxRows_Recordset1 = 20;$pageNum_Recordset1 = 0;$query_Recordset1 = SELECT * FROM s_login where s_sno=$field ;$query_limit_Recordset1 = sprintf(%s LIMIT %d, %d, $query_Recordset1, 5学生签到模块一主要功能(1) 根据用户帐号,从数据库中学生信息表中提取

36、数据;(2) 将提取的信息放到签到信息页上;二实现方式u 根据用户帐号提取个人信息 mysql_select_db($database_conn, $conn);$query_Recordset2 = SELECT s_infor.* FROM s_infor ,s_signup where s_infor.s_sno= s_signup.s_sno and s_signup.s_zh=$s_zh;u 实现签到第一, 连接数据库,查找信息。如果有正确的信息输入进去mysql_select_db($database_conn, $conn);$query= insert into s_login

37、 values($s_sno,$s_name,$s_pro,$s_gra,$cc,$ip);$Recordset1 = mysql_query($query, $conn) or die(mysql_error();header(location: pp.php?flag=2);第二,把要显示的信息转到s_infor.php页面输出来 6教师控制台模块一主要功能1教师允许签到,设置数据库t_control中控制标志位;2停止签到,设置数据库中t_control控制标志为;二 实现方式u 设置标志为 第一, 教师允许签到if(!strcmp($button,开始) /使标志位值为1 开始签到$q

38、uery_Recordset1 = insert into t_control(falg) values(1);$Recordset1 = mysql_query($query_Recordset1, $conn) or die(mysql_error();第二, 停止签到 if (!strcmp($button,停止)/去除标志位$query_Recordset1 = delete from t_control where falg=1;$Recordset1 = mysql_query($query_Recordset1, $conn) or die(mysql_error();u 使其他

39、学生下次正常签到$query_Recordset1 = update s_login set ip=1;$Recordset1 = mysql_query($query_Recordset1, $conn) or die(mysql_error();7学生出勤统计模块一主要功能1教师期末统计学生出勤信息2了解学生本学期学习状态;3正确录入期末成绩; 二实现方式 教师登录t_last.php第一, 要统计的信息不能为空。第二,显示统计信息maxRows_Recordset1 = 20;$pageNum_Recordset1 = 0;$query_Recordset1 = SELECT * FRO

40、M statistic;$query_limit_Recordset1 = sprintf(%s LIMIT %d, %d, $query_Recordset1, $startRow_Recordset1, $maxRows_Recordset1);第四章 测 试测试在开发软件过程中是一个不可缺少的局部。因为在开发软件系统的漫长过程中,面对着极其错综复杂的问题,人的主观认识不可能完全符合客观现实,与工程密切相关的各类人员之间的通信和配合也不可能完美无缺,因此,在软件生命周期的各个阶段都不可防止地产生过失。我们力求在每个阶段结束之前通过严格的技术审查,尽可能早地发现并纠正错误;但是,经验说明审查

41、并不能发现所有的过失,此外在编码过程中还不可防止地会引入一些新的错误。如果在软件生产性运行之前,没有发现并纠正软件中的大局部过失,那么这些错误迟早在生产过程中暴露出来,那时不仅仅改正这些错误的代价更高,而且往往会造成很恶劣的后果。测试的目的就是在软件投入生产运行之前,尽可能多地发现并纠正软件中的错误。基于上述的原因,我在编码过程中进行了模块测试,编码结束进行了系统测试和验收测试。 4.1 模块测试 测试方案我采用了白盒测试又称结构测试,即按照程序内部的逻辑结构,检验程序中的每条通路是否能够按照预定要求正常工作。由于设计过程当中,不免会出现很多意想不到的结果发生,为了减少不必的错误出现,同时,为

42、了能够使不同的文件之间正确和有效的衔接,我在设计模块的过程,对于每一个文件的执行和模块的执行都做了认真地测试,以求到达设计要求。4.1.2 测试过程主要检查模块的两个方面,一个是各个模块之间的接口,另一个是模块的运行是否正常。对于检验各个模块之间的接口,所做的测试工作有:1) 每个被调用模块之间是否能够正常接受参数包括系统变量;2) 每个被调用模块之间能否正常地而且有效地衔接上;对于检验模块的运行是否正常,所做的测试工作有:1) 对每一个模块中各个执行过程严格地进行检查与检测;2) 对每一个模块中各个文件内所设计的函数逐个进行达标测试;3) 对每一个模块在调用的过程中,时刻检测系统变量的过程性

43、变化; 测试结果测试结果说明,每一个模块都能够正常独立地运行,各个模块之间的接口亦能正确地吻合,同时每个模块根本上到达了设计的要求。4.2 系统测试 测试方案这个局部由我的导师在设计过程当中和结束是不断地进行黑盒测试又叫功能测试,即检查程序功能是否按照规格说明书的规定正常使用,程序是否能够适当地接收输入数据产生正确的输出信息,并且保持外部信息的完整性。在这次的设计当中,对于每一个模块的功能实现上和设计风格上,我的导师都做了细致的检测和提出建设性的意见,并且尽力去找出系统的纰漏之处。 测试过程主要由我的导师在不同的时间、不同机器和不同的系统状态下进行测试过程,利用特殊的参数和普通参数两种方式进行

44、测试。4.2.3 测试结果测试结果说明,系统能够按照设计的要求实现其内部的各项功能,同时提前完成了设计的任务要求。4.3 验收测试4.3.1 测试方案我采用黑盒测试,对系统的各个模块功能进行了随机抽样检验,同时作了相应的时间比拟。4.3.2 测试过程我对所抽样后选择出的模块进行黑盒测试,从以下几个角度进行:1) 从用户自身的角度,进行了有个性的测试;2) 从管理员的角度,对系统的维护与管理的效率进行了测试;3) 从一个破坏者的身份,对系统的平安性进行测试;4.3.3 测试结果测试结果说明,尽最大地可能满足了不同用户的需求,同时保证了系统管理员的高效的管理工作,根本上有效地防止了破坏者的恶意攻击

45、。4.4 小结在测试的过程当中,发现不少错误与缺乏之处,通过广泛的查找资料和导师的认真指导,根本上修正了存在的这些错误,能够到达设计的要求,同时,不断地完善了一些模块的功能。通过这些的测试工作,我真正认识到了测试的重要性、必要性。同时提高了我对错误的分析能力和警惕性,增强了我的编程能力,增加了我的设计经验。测试结果说明,我的系统可以进行应用。第五章 结束语5.1 系统改良意见由于我个人的技术水平有限,同时编程经验缺乏,对系统的设计带来了一些不利的因素,在设计系统的功能模块时,仅按要求设计出根本的模块,这对于一个综合性的网站不相称,同时有些个性化的设计没有应用上,这使我更加认识到系统的不完善,在

46、此我将我的改善意见表述如下,希望后继的设计者能够适当完善。l 由于我对网页美化的设计工作投入有限,使得页面在整体的美观上存在许多欠缺之处;l 由于对用户的需求了解有限,对用户所需要的功能设计上存在着许多缺乏,尤其是冒名签到局部。l 由于此系统的设计要求有所侧重,所以,其中“后台管理这项功能模块在设计上简化了许多,与现在流行的后台管理相比,还存在一定的距离;l 由于设计思路的限制和认识空间的狭隘,设计出非常有限的系统管理员的管理手段,这对于一个系统管理员高效地进行管理与维护工作是不协调的,应该从不同的管理角度进行设计出一些更有效的管理手段;由于我个人的能力有限,这套系统的欠妥之处在所难免,敬请各

47、位老师多给予珍贵意见。5.2 设计心得 通过本次设计,学到了不少东西。不但对PHP+MYSQL这一开发工具有所掌握,更重要的是对进行软件设计的整体设计流程及思维方法有了深刻的认识。在期间,发现的许多问题都源于没有认真地按步骤进行设计,不重视需求分析,总体设计局部,对各个方面将会产生的问题考虑不周全。总之,在整个设计完善的过程中,我学到了在书本里根本学不到的许多知识,体会到PHP+MYSQL的强大功能,总体把握系统的流程的为实现某个功能的各个程序的流程是多么的重要,再一次感谢金小峰老师的细心指导。参考文献1. ?PHP语言,进阶和高级应用? 龙浩等编著 清华大学出版社2. ?PHP & MYSQ

48、L Web数据库应用开发指南? Hugh E.Williams等著 谢君英 欧阳宇译2003年5月3. ?php程序设计? Programming PHP 中国电力出版社 2003年7月4?phpmysql数据库开发指南?焦桐顺著电子工业出版社2001年9月5?php4交互网页数据库实战手册?清华大学出版社2004年7月指导教师评语、院系论文辩论机构意见论 文 指 导 教 师 评 语签字印章:年 月 日院 系 论 文 答 辩 机 构 意 见辩论机构负责人签字:院系印章年 月 日09/20 11:46 102机体齿飞面孔双卧多轴组合机床及CAD设计09/08 20:02 3kN微型装载机设计09

49、/20 15:09 45T旋挖钻机变幅机构液压缸设计08/30 15:32 5吨卷扬机设计10/30 17:12 C620轴拨杆的工艺规程及钻2-16孔的钻床夹具设计09/21 13:39 CA6140车床拨叉零件的机械加工工艺规程及夹具设计83100308/30 15:37 CPU风扇后盖的注塑模具设计09/20 16:19 GDC956160工业对辊成型机设计08/30 15:45 LS型螺旋输送机的设计10/07 23:43 LS型螺旋输送机设计09/20 16:23 P-90B型耙斗式装载机设计09/08 20:17 PE10自行车无级变速器设计10/07 09:23 话机机座下壳模具

50、的设计与制造09/08 20:20 T108吨自卸车拐轴的断裂原因分析及优化设计09/21 13:39 X-Y型数控铣床工作台的设计09/08 20:25 YD5141SYZ后压缩式垃圾车的上装箱体设计10/07 09:20 ZH1115W柴油机气缸体三面粗镗组合机床总体及左主轴箱设计09/21 15:34 ZXT-06型多臂机凸轮轴加工工艺及工装设计10/30 16:04 三孔连杆零件的工艺规程及钻35H6孔的夹具设计08/30 17:57 三层货运电梯曳引机及传动系统设计10/29 14:08 上盖的工工艺规程及钻6-4.5孔的夹具设计10/04 13:45 五吨单头液压放料机的设计10/

51、04 13:44 五吨单头液压放料机设计09/09 23:40 仪表外壳塑料模设计09/08 20:57 传动盖冲压工艺制定及冲孔模具设计09/08 21:00 传动系统测绘与分析设计10/07 23:46 保护罩模具结构设计09/20 15:30 保鲜膜机设计10/04 14:35 减速箱体数控加工工艺设计10/04 13:20 凿岩钎具钎尾的热处理工艺探索设计09/08 21:33 别离爪工艺规程和工艺装备设计10/30 15:26 制定左摆动杠杆的工工艺规程及钻12孔的夹具设计10/29 14:03 前盖板零件的工艺规程及钻8-M16深29孔的工装夹具设计10/07 08:44 加油机油

52、枪手柄护套模具设计09/20 15:17 加热缸体注塑模设计10/07 09:17 动模底板零件的工艺规程及钻52孔的工装夹具设计10/08 20:23 包缝机机体钻孔组合机床总体及夹具设计09/21 15:19 升板机前后辅机的设计09/09 22:17 升降式止回阀的设计09/22 18:52 升降杆轴承座的夹具工艺规程及夹具设计09/09 16:41 升降杠杆轴承座零件的工艺规程及夹具设计08/30 15:59 半自动锁盖机的设计包装机机械设计08/30 15:57 半轴零件的机械加工工艺及夹具设计10/29 13:31 半轴零件钻6-14孔的工装夹具设计图纸09/26 13:53 单吊杆式镀板系统设计08/30 16:20 单级齿轮减速器模型优化设计08/30 16:24 单绳缠绕式提升机的设计09/09 23:08 卧式加工中心自动换刀机械手设计09/08 22:10 厚板扎机轴承系

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!