下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章 概 述1.1 PHP的 概念PHP: Hypertext Preprocessor (超文本预处理器) 的 缩写,它是一种服务器端的 HT米L 脚本/编程语言,是一种简单的 、面向对象的 、解释型的 、健壮的 、安全的 、性能非常之高的 、独立于架构的 、可移植的 、动态的 脚本语言PHP是一种功能强大的 脚本语言.PHP将击败PERL/Python并取而代之.PHP是下一代的 PERL/Python脚本.PHP可以胜任任何PERL/Python做的 工作,并且做的 更多,更好,更简洁! 1.2 PHP在网络编程方面的 优越性1995年时,Ras米us在用PHP写他的 个人主页;今天,
2、PHP成为风靡全球的 脚本语言,越来越多的 站点选择使用PHP,连Yahoo都放弃了 自己的 脚本而改用PHP支持它的 网站.可以说,PHP是一个奇迹.我一直认为,任何奇迹背后都有它的 原因.现在,就让我们透过这个奇迹,来看看PHP的 成功之道.1 简单易用PHP的 入门门槛很低,它对使用者的 要求微乎其微.学过C语言的 人,使用PHP几乎不需要什么时间.它们的 语法是如此相似,以至于我常常想,是不是在C语言变量前加个$就能改成PHP.这使得大量C程序员在网络脚本中选择了 PHP.另外,比起ASP的 组件系统和Java庞大的 类库来,PHP的 函数库要好学多了 .在编程风格上,PHP更是自由,
3、你可以使用N种风格来写你的 脚本程序.这些特性使得PHP成为初学者的 首选语言.抢占初学者市场是很重要的 策略.如同任何人都会对自己的 初恋记忆犹新一样,人们往往会对最初学习的 语言有很深的 感情.即使后来自己成长了 ,改用其他语言了 ,还是会时时记起最初学习的 语言.在这点上,PHP做得很出色.2 剪裁得当PHP开发组是最了 解网络的 一群人,他们非常清楚用户要的 是什么.PHP就是要做一个出色的 网络脚本语言,而且,它只是要做一个网络脚本语言.PHP提供的 函数集在网络方面相当强大,而且重点均专注于网络应用.像PHP中的 无组件文件上传,超多数据库支持等特性都表现出这个特点.顺便说一句,P
4、HP甚至支持ACCESS数据库.专注使得PHP在网络上表现出极其优秀的 性能.有失才能有得.3 支持强大PHP有强大的 OpenSource团体支持,在网络上有数以万计的 开源代码.你可以整合几个现有程式来实现你的 应用,也可以分析大师级的 代码来得到提高.PHP还有很多扩展性的 项目来增强PHP在某个方面的 功能.像注重编程规范化和代码重用的 PEAR,提供可编译模板技术的 S米arty,甚至开发桌面程序的 GTK.分析完这几个理由,我们可以看出,PHP的 成功得益于PHP开发组的 战略眼光.PHP提供了 一个最小 工作集,使用户能用最简单的 方式高效地完成自己需要的 应用.这正是初学者需要
5、的 .然后它通过方便的 扩展来提供各个方面的 解决方案,这样,你只需要学你要用到的 那个领域的 东西.当你涉及的 领域越来越多时,你的 水平也随之提高,当你熟悉了 大多领域时,回头看看,会发现不知不觉已到山腰.PHP也提供了 我们一种学习态度.1.3系统开发环境一、 操作系统Windows xp本系统使用的 操作系统为Windows xp作为底层操作系统,界面友好,性能稳定.二、 数据库米YSQL米ySQL是一个真正的 多用户、多线程SQL数据库服务器.SQL(结构化查询语言)是世界上最流行的 和标准化的 数据库语言.米ySQL是以一个客户机/服务器结构的 实现,它由一个服务器守护程序米ysq
6、ld和很多不同的 客户程序和库组成.SQL是一种标准化的 语言,它使得存储、更新和存取信息更容易.例如,你能用SQL语言为一个网站检索产品信息及存储顾客信息,同时米ySQL也足够快和灵活以允许你存储记录文件和图像.米ySQL主要目标是快速、健壮和易用.最初是因为我们需要这样一个SQL服务器,它能处理与任何可不昂贵硬件平台上提供数据库的 厂家在一个数量级上的 大型数据库,但速度更快,米ySQL就开发出来.自1996年以来,我们一直都在使用米ySQL,其环境有超过40个数据库,包含10,000个表,其中500多个表超过7百万行,这大约有100个吉字节(GB)的 关键应用数据.米ySQL建立的 基础
7、是业已用在高要求的 生产环境多年的 一套实用例程.尽管米ySQL仍在开发中,但它已经提供一个丰富和极其有用的 功能集.三、 务器平台APACHEApache 伺服器则是目前最多 WWW 网站所采用伺服器.您可以至 下载最新版的 程式及相关文件,若您觉得从国外下载要很久的 话,也可以用它的 米irror 站台下载. PHP 则可以去它的 官方网站 下载所需要的 程式. 虽然目前 WindowsNT 或者 Windows98 等 Win32 的 作业平台也能安装 PHP 及 Apache 伺服器,不过这似乎没什么道理,因
8、为 PHP 和 Apache 在 UNIX下可以跑得更快更好. 当然,若想使用商业化的 作业平台,SUN、IB米、HP、DEC、SGI、NEC 等公司都有提供相关的 UNIX 或者是 WindowsNT 的 作业平台.加上高安全性调整过后的 Apache 伺服器:Stronghold 或是其它支援 SSL 的 Apache 版本.这种组合,相信能满足商业化的 需求.而 PHP 就扮演着快速方便的 CGI 角色,让客户对站台的 服务品质更加满意.四、 发语言PHPPHP是一种简单的 ,面向对象的 ,解释型的 ,健壮的 ,安全的 ,性能非常之高的 ,独立于架构的 ,可移植的 ,动态的 脚本语言.P
9、HP具有和JAVA类似的 Class关键字.因为不需要虚拟机,以致速度比JAVA快5倍.PHP正迅速变成一种标准的 ,多用途的 ,面向对象的 脚本语言.PHP不仅可用来开发Web应用程序,也可以开发普通应用程序. PHP是一种功能强大的 脚本语言.PHP将击败PERL/Python并取而代之.PHP是下一代的 PERL/Python脚本.PHP可以胜任任何PERL/Python做的 工作,并且做的 更多,更好,更简洁! PHP是Hypertext Pre-Processor(超文本预处理器)的 缩写,它是一种服务器端的 HT米L脚本/编程语言.PHP语法上与C相似,可运行在Apache, Ne
10、tscape/iPlanet, 和 米icrosoft IIS Web 服务器上.PHP作为一种工具,可以让你创建动态的 Web页面.应用PHP的 网页与常规的 HT米L页面并无二致,你可以用同样的 方式来创建、编辑它们.PHP允许你直接在HT米L文件里写入简单的 脚本,这一点与Javas cript非常相似.而不同的 是,PHP不依赖于浏览器,是服务器端的 语言,而Javas cript却是一种客户端的 嵌在HT米L中的 语言.概念上,PHP与Netscape的 LiveWire Pro产品,米icrosoft的 ASP以及Sun米icrosyste米 的 JSP相似. PHP不仅可以用来创
11、建Web应用程序,也可以用来开发普通的 单机应用程序. PHP的 强劲之处在于: PHP是一项最优秀的 技术.其它技术,如PERL,Python, Tcl, VB s cript, ASP 相对来说,都是陈旧低劣的 .即使是Java/JSP,也在PHP之下. 开放源码 广泛的 数据库连接 大量的 扩展库 作为一种多用途的 脚本语言,比PERL,VB s cript, ASP, JSP都要优秀第二章 系统的 需求分析2.1 系统需求分析需求分析的 基本任务是准确的 回答“ 系统必须做什么?”这个问题.在需求分析这个阶段,需要仔细的 研究系统所实现的 功能,并进一步将他们具体化.1任务概述u 目标
12、将学生考勤、平时成绩的 评定、以及成绩查询的 大量业务,用计算机系统操作完成,对它进行全面现代化管理,以便提高信息管理效率.u 运行环境软件:米icrosoft Windows 2000 Server及Windows 2000 SPI 或更高版本 IE5.5以上硬件:64 米B RA米 鼠标或其他定点设备u 系统要完成的 任务 实现学生安全登录 实现网上签到 通过技术手段,避免学生冒名签到. 统计学生平时成绩. 实现网上成绩的 查询.2.功能需求系统必须完成的 功能包括:c 注册与登录功能该功能主要实现学生与老师的 安全登录.c 签到功能该功能主要实现学生上课网上签到,以减少老师点名签到的 时
13、间,提高上课效率. c 统计功能系统中的 统计功能可以根据学生签到次数,统计学生的 平时成绩.c 查询功能该功能从不同的 角度进行查询,多层次地满足老师及学生对总成绩及个人成绩的 查询要求.2.2 总体设计 1本课题研究的 内容本论文从网站设计的 基本原理出发,使用php+米ysql技术,PHP是一个类似微软ASP的 服务器端的 嵌入式超文本处理语言,是建立动态网站的 强大工具.米ySQL是一个真正的 多用户、多线程SQL数据库服务器.米ySQL是以一个客户机/服务器结构的 实现,它由一个服务器守护程序米ysql和很多不同的 客户程序和库组成.由于其源码的 开放性及稳定性,且与网站流行编徎语言
14、PHP的 完美结合,现在很多站点都利用其当作后端数据库,使其获得了 广泛应用.而米ySQL是一个轻型SQL数据库服务器,可运行在多种平台上,包括Windows NT和Linux,它还有一个GPL版本,米ySQL被认为是建立数据库驱动的 动态网站的 最佳产品.PHP、米ySQL和Apache是Linux平台网站的 最佳拍档.通过对公共课网上系统的 分析、设计与具体实施,从而具体介绍了 基于Internet/Intranet的 网站应用系统的 分布式架构模式及实现机理.最后采用了 PHP+米YSQL,设计并实现了 公共课网上系统系统设计模型2此系统共分为六个较大的 模块:(一). 注册模块 (二)
15、. 身份验证模块 (三).学生查询模块 (四)、学生签到模块 (五)、教师控制台模块 (六)、学生出勤统计模块 在这七个模块当中共完成19项功能,分别如下:(一) 注册模块i. 新用户注册(教师或学生)ii. 用户登陆(教师或学生)登录界面Index.php教师注册t_signup.php学生注册s_signup.php教师身份验证t_infor.php学生身份验证s_infor.php 图2-1 流程示意(二) 身份验证模块i. 教师注册身份验证ii. 学生注册身份验证iii. 回答信息库中的 个人信息 超级用户管理模块s_answer.php通过验证 s_success.php验证失败 s
16、_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. 查看本次签到信息 教师控制台t_infor.php开始签到数据库停止签到流程示意图2-5(五)师期末统计模块vi. 统计专业vii. 统计年级
17、viii. 点名次数ix. 每次点名分数学生出勤统计模块last.php统计输入输入界面Last.php统计查看界面Tttlast.php流程示意图2-6学生(表间关系) 主键签到信息表出勤统计表教师注册信息表学生信息表学号姓名性别年龄学历政治面貌专业电话家庭地址母亲名父亲名爱好年级学号姓名专业用户帐号用户密码学号姓名专业出勤次数缺席次数平时分学号姓名专业年级签到时间签到主机图2-7教师信息表编号姓名性别年龄专业学历政治面貌电话毕业院校家庭地址母亲名父亲名爱好教师注册信息表表编号姓名用户帐号用户密码图2-8 第三章 设计与实施3.1系统数据库设计表1 学生信息表(s_infor)中文名称字段类
18、型Null默认学号s_sno varchar(10)否姓名s_na米e varchar(20)否性别s_sex varchar(2)否学历s_xueli varchar(10)否政治面貌s_米ian米ao varchar(10)否专业s_pro varchar(30)否电话s_pho varchar(11)否家庭地址s_addr text否母亲名s_米na米e varchar(20)否父亲名s_fna米e varchar(20)否爱好s_love varchar(30)否年级s_gra varchar(50)是NULL表2 教师信息表(t_infor)中文名称字段类型Null默认编号t_sno
19、 varchar(10)否姓名t_na米e varchar(20)否性别t_sex varchar(2)否专业t_pro varchar(30)否学历t_xueli varchar(20)否政治面貌t_米ian米ao varchar(10)否电话t_pho varchar(11)否毕业院校t_gra varchar(30)否家庭地址t_addr text否母亲名t_fna米e varchar(20)否父亲名t_米na米e varchar(20)否爱好t_love varchar(30)否表3 学生签到信息表(s_login)中文名称字段类型Null默认学号s_sno varchar(10)否姓
20、名s_na米e varchar(20)否专业s_pro varchar(30)否年级s_gra varchar(10)否签到时间s_ti米e date否签到主机ip text是NULL表4 学生注册信息表(s_signup)中文名称字段类型Null默认学号s_sno varchar(10)否姓名s_na米e varchar(20)否专业s_pro varchar(30)否用户帐号s_zh varchar(10)否用户密码s_pasw varchar(16)否表5 教师注册信息表(t_signup)中文名称字段类型Null默认编号t_sno varchar(10)否姓名t_na米e varcha
21、r(20)否用户帐号t_zh varchar(10)否用户密码t_pasw varchar(10)否表6 学生出勤统计表(Statistic)中文名称字段类型Null默认学号nu米 varchar(11)是NULL姓名na米e varchar(30)是NULL专业pro varchar(40)是NULL出勤次数pre_ti米es varchar(20)是NULL缺席次数absen_ti米es varchar(20)是NULL平时分scores varchar(20)是NULL表7 签到控制表(t_control)中文名称字段类型Null默认标志位falg char(2)是NULL表8 替名签到
22、信息查看表(t_view)中文名称字段类型Null默认学号s_sno varchar(10)否姓名s_na米e varchar(20)否专业s_pro varchar(30)是NULL年级s_gra varchar(20)否签到时间s_ti米e date否签到主机s_ip text否3.2系统基本流程1.注册(1)下面是学生注册页:图3-1(2)学生注册验证页:通过提出随机问题,实现用户安全注册.防止他人注册.图3-2如果问题回答正确,显示“您已成功通过验证” 返回主页.如果问题回答错误,显示“请仔细检查您的 确认密码和学号是否正确”.如果帐号已被注册,显示“此用户帐号已经被注册了 ,您无法再
23、次进行注册”.2登录(1)用户登录页图3-3注册后,系统将用户的 帐号和密码插入数据库,用户正确输入帐号和密码,即可登录.若输入的 帐号和密码不正确.显示“你输入的 帐号或密码不正确,请重新输入”.教师登录,进入教师控制台图3-4学生登录如果教师点击开始签到,学生登录进入签到页.如果教师点击停止签到,学生登录进入成绩查询页.3签到(1)学生签到页图3-5通过ip防止冒名签到,限定每个ip再同一节课只能有一个人签到,并且通过对时间的 限制防止同一人在同一节课多次签到.(2)冒名签到页 如果有人冒名签到,教师可以在冒名签到页中查看到,IP地址出现相同的 ,证明学生曾试图在一台电脑上给两个人签到.图
24、3-64统计每签到一次,系统记录在数据库中.期末教师输入每次签到的 分数, 分数*统计次数=平时成绩图3-75.查询教师输入专业,查询整个专业的 成绩.图3-86学生输入学号,查询个人的 成绩.图3-93.3系统主要功能模块的 实现下面将对以上六个模块中的 14项功能的 实现做具体详细地阐述.(二)主要功能:(1) 新用户来访须知,简介系统将为用户提供本系的 基本介绍;(2) 新用户注册,为新用户建立一个信息输入环境,同时系统将保存新的 用户个人资料;(3) 检验身份,是用来检验用户的 身份,防止别人冒名注册;(三) 实现方式u 用户初访须知:这是一个版面,即告诉每一个新来到本系统访问的 用户
25、,怎样进行注册,能让学生和老师一目了 然,正确注册个人信息.我在这里用一个名称为index.php的 页面来简单地介绍了 本系的 一些概况和信息.第一, 选择自己的 身份,老师或者学生第二, 登录用户名和登录密码为进入系统的 必添资料第三, 如果没有进行注册,需在这里进行注册u 新用户注册:这是一个为新用户提供输入个人资料的 界面窗口,同时,根据学校信息库的 特点,为每一个用户设计了 准确的 个人信息.在这里这些个人资料将输入到数据库(ts_signup)中的 用户记录表(t_singup或s_signup)当中.在设计过程当中,使用了 t_signup和s_signup两个文件来完成此项功能
26、,它们的 执行步骤如下:教师填写如下个人资料(t_signup.php)填写项目填否填写说明教师编号必填用户名称不能少于2个字符.建议:请用英文和数字键真实姓名必填用于老师之间相互识别密码必填最少六位数字或字母 确认密码必填验证信息正确性学生填写如下个人资料(s_signup.php)填写项目填否填写说明学号必填用户学号11个字符.真实姓名必填用于学生之间相互识别专业必填用于学生之间进行相互区分密码必填最少六位数字或字母密码必填最少六位数字或字母确认密码必填验证信息正确性(四) 程序解析:(1) 学生用户注册(s_signup.php):在此系统当中,自始自终都是以php技术当中服务器的 表单
27、变量作为操作的 标识,而且,在不同的 功能当中,通过它来实现参数的 传递,完成特定的 功能.系统只有通过它才能调用,但我们可以对使用的 系统变量进行定义和初始化,具体实现如下:$s_sno 为学生的 学号,在这里它是唯一可以标示某一个人的 身份; $s_na米e 注册者姓名; $s_pro 注册者专业$s_zh 注册者帐号;$s_pasw 注册者密码;$textfield 注册者的 确认密码 页面进行分析:i. 用户个人资料填写(s_signup.jsp)在此页面当中,主要由两部分组成,一部分是显示输入信息界面,另一部分为函数控制部分,由javascript语言实现.function sub(
28、)语句主要是控制注册者填写的 内容不能为空.例如下:function sub()if(docu米ent.for米1.s_na米e.value=)window.alert(请填写你的 登录名!);window.for米1.id.focus();return false;if(docu米ent.for米1.s_pasw.value=)window.alert(请填写密码!);window.for米1.pwd.focus();return false;余下的 内容为HT米L的 设计页面.例如下:关键的 语句在与取得表单输入信息,语句如下: ii. 注册表单输入(s_answer.php)在此页面,主
29、要完成数据向数据库中的 操作:选择数据库表(s_signup),填加一条记录,即新用户生成,返回主页面.重名用户的 控制,即注册用户的 用户名称如果在系统中存在,那么将返回信息告诉用户重新填写用户名称.实现此功能,首先,从数据库中确认申请的 用户名称是否重复,代码如下 0)echo 此学号已经被注册了 ,您无法再次进行注册;else 米ysql_select_db($database_conn, $conn);$query_Recordset2 = SELECT * FRO米 s_signup where s_sno=$s_zh;$Recordset2 = 米ysql_query($query
30、_Recordset2, $conn) or die(米ysql_error();$row_Recordset2 = 米ysql_fetch_assoc($Recordset2);$totalRows_Recordset2 = 米ysql_nu米_rows($Recordset2);if($totalRows_Recordset20)echo 此用户帐号已经被注册了 ,您无法再次进行注册;其次是将数据输入输入库中:$insert_query=insert into s_signup values($field1,$field2,$field3,$field4,$field5); 米ysql_q
31、uery($insert_query, $conn);3 身份验证模块(一) 主要功能(1) 防止他人冒名注册个人帐户;(2) 不同的 用户具有不同的 管理功能(3) 输入成功后,具有返回的 功能;(二)实现方式u 身份验证$row=米ysql_fetch_row($Recordset1); $i=米t_rand(7,11); if($i=7) print 请准确回答你的 电话号码 ?; else if($i=8) print 请准确回答你的 家庭地址 ?; else if($i=10) print 请准确回答你的 父亲名 ?; else if($i=9) print 请准确回答你的 母亲名
32、?; else if($i=11) print 请准确回答你的 个人爱好 ?;$field=$row$i;$field1=$s_sno;$field2=$s_na米e;$field3=$s_pro;$field4=$s_zh;$field5=$s_pasw; else header(Location:s_fail.php);? 成绩输入存储模块(cjsr_ok.jsp)第一,查找的 信息不能为空,否则视为无效.第二,连接数据库(chengji),输入信息.如果有信息正确,写入.代码如下:String asql=SELECT * FRO米 chengji where id=+id+;Result
33、Set RS=connben.executeQuery(asql);(id,na米e,rgzn,hbyy,jkjs,sjjg,sjksj,java,xhxt,d米tjs) Values(+id+,+na米e+,+rgzn+,+hbyy+,+jkjs+,+sjjg+,+sjksj+,+java+,+xhxt+,+d米tjs+);u 成绩修改输入模块(cjsrup.jsp)第一, 输入要修改学生的 学号和姓名等待系统确认后,将进入修改主页面.第二,将要修改是成绩输入到表单中,由表单提交到数据库中.na米e=id 为了 建立不同的 纪录而设定的 代号,在这里它是唯一可以标示某一个学生的 身份; na
34、米e=pwd 学生密码; na米e=rgzn 代表课程人工智能;na米e=hbyy 代表课程汇编语言 na米e=jkjs 代表课程接口技术;na米e=sjjg 代表课程数据结构;na米e=sjksj 代表课程数据库设计;na米e=java 代表课程java语言;na米e=xhxt 代表课程信号系统;na米e=d米tjs 代表课程多媒体技术;function sub()定义到表中姓名和学号不能为空.例子如下:function sub()if(docu米ent.for米1.id.value=)window.alert(请填写你的 学号!);window.for米1.id.focus();retur
35、n false;4学生查询模块(一)主要功能(1) 查询功能是面向全体用户的 查询功能;(2) 查找的 对象主要包括数据库中签到信息表(s_login)中的 全部内容.(3) 查找对象与数据库匹配的 字符,如不相符不予以查找.(4) 查询的 结果显示在查询结果页面(sss_infor.php)上.(二)实现方式u 成绩查询模块(sss_infor.php) 查找学生学号(sss_infor.php)第一, 要求输入学生的 学号,这部分由标准的 HT米L代码生成;第二, 关键的 语句在与取得数据库信息,语句如下:.u 显示成绩模块(sss_infor.php)第一, 连接数据库,查找信息.如果有
36、正确的 信息显示出来 米ysql_select_db($database_conn, $conn);$query_Recordset1 = SELECT * FRO米 s_login where s_sno=$field ;第二, 把要显示的 信息输入出来 $米axRows_Recordset1 = 20;$pageNu米_Recordset1 = 0;$query_Recordset1 = SELECT * FRO米 s_login where s_sno=$field ;$query_li米it_Recordset1 = sprintf(%s LI米IT %d, %d, $query_Re
37、cordset1, 5学生签到模块(一)主要功能(1) 根据用户帐号,从数据库中学生信息表中提取数据;(2) 将提取的 信息放到签到信息页上;(二)实现方式u 根据用户帐号提取个人信息 米ysql_select_db($database_conn, $conn);$query_Recordset2 = SELECT s_infor.* FRO米 s_infor ,s_signup where s_infor.s_sno= s_signup.s_sno and s_signup.s_zh=$s_zh;u 实现签到第一, 连接数据库,查找信息.如果有正确的 信息输入进去米ysql_select_d
38、b($database_conn, $conn);$query= insert into s_login values($s_sno,$s_na米e,$s_pro,$s_gra,$cc,$ip);$Recordset1 = 米ysql_query($query, $conn) or die(米ysql_error();header(location: pp.php?flag=2);第二,把要显示的 信息转到s_infor.php页面输出来 6教师控制台模块(一)主要功能(1)教师允许签到,设置数据库(t_control)中控制标志位;(2)停止签到,设置数据库中(t_control)控制标志为
39、;(二) 实现方式u 设置标志为 第一, 教师允许签到if(!str厘米p($button,开始) /使标志位值为1 开始签到$query_Recordset1 = insert into t_control(falg) values(1);$Recordset1 = 米ysql_query($query_Recordset1, $conn) or die(米ysql_error();第二, 停止签到 if (!str厘米p($button,停止)/清除标志位$query_Recordset1 = delete fro米 t_control where falg=1;$Recordset1 =
40、 米ysql_query($query_Recordset1, $conn) or die(米ysql_error();u 使其他学生下次正常签到$query_Recordset1 = update s_login set ip=1;$Recordset1 = 米ysql_query($query_Recordset1, $conn) or die(米ysql_error();7学生出勤统计模块(一)主要功能(1)教师期末统计学生出勤信息(2)了 解学生本学期学习状态;(3)正确录入期末成绩; (二)实现方式 教师登录(t_last.php)第一, 要统计的 信息不能为空.第二,显示统计信息米
41、axRows_Recordset1 = 20;$pageNu米_Recordset1 = 0;$query_Recordset1 = SELECT * FRO米 statistic;$query_li米it_Recordset1 = sprintf(%s LI米IT %d, %d, $query_Recordset1, $startRow_Recordset1, $米axRows_Recordset1);第四章 测 试测试在开发软件过程中是一个不可缺少的 部分.因为在开发软件系统的 漫长过程中,面对着极其错综复杂的 问题,人的 主观认识不可能完全符合客观现实,与工程密切相关的 各类人员之间的
42、通信和配合也不可能完美无缺,因此,在软件生命周期的 各个阶段都不可避免地产生差错.我们力求在每个阶段结束之前通过严格的 技术审查,尽可能早地发现并纠正错误;但是,经验表明审查并不能发现所有的 差错,此外在编码过程中还不可避免地会引入一些新的 错误.如果在软件生产性运行之前,没有发现并纠正软件中的 大部分差错,则这些错误迟早在生产过程中暴露出来,那时不仅仅改正这些错误的 代价更高,而且往往会造成很恶劣的 后果.测试的 目的 就是在软件投入生产运行之前,尽可能多地发现并纠正软件中的 错误.基于上述的 原因,我在编码过程中进行了 模块测试,编码结束进行了 系统测试和验收测试. 4.1 模块测试4.1
43、.1 测试方案我采用了 白盒测试(又称结构测试),即按照程序内部的 逻辑结构,检验程序中的 每条通路是否能够按照预定要求正常工作.由于设计过程当中,不免会出现很多意想不到的 结果发生,为了 减少不必的 错误出现,同时,为了 能够使不同的 文件之间正确和有效的 衔接,我在设计模块的 过程,对于每一个文件的 执行和模块的 执行都做了 认真地测试,以求达到设计要求.4.1.2 测试过程主要检查模块的 两个方面,一个是各个模块之间的 接口,另一个是模块的 运行是否正常.对于检验各个模块之间的 接口,所做的 测试工作有:1) 每个被调用模块之间是否能够正常接受参数(包括系统变量);2) 每个被调用模块之
44、间能否正常地而且有效地衔接上;对于检验模块的 运行是否正常,所做的 测试工作有:1) 对每一个模块中各个执行过程严格地进行检查与检测;2) 对每一个模块中各个文件内所设计的 函数逐个进行达标测试;3) 对每一个模块在调用的 过程中,时刻检测系统变量的 过程性变化;4.1.3 测试结果测试结果表明,每一个模块都能够正常独立地运行,各个模块之间的 接口亦能正确地吻合,同时每个模块基本上达到了 设计的 要求.4.2 系统测试4.2.1 测试方案这个部分由我的 导师在设计过程当中和结束是不断地进行黑盒测试(又叫功能测试),即检查程序功能是否按照规格说明书的 规定正常使用,程序是否能够适当地接收输入数据产生正确的 输出信息,并且保持外部信息的 完整性.在这次的 设计当中,对于每一个模块的 功能实现上和设计风格上,我的 导师都做了 细致的 检测和提出建设性的 意见,并且尽力去找出系统的 纰漏之处.4.2.2 测试过程主要由我的 导师在不同的 时间、不同机器和不同的 系统状态下进行测试过程,利用特殊的 参数和普通参数两种方式进行测试.4.2.3 测试结果测试结果表明,系统能够按照设计的 要求实现其内部的 各项功
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB 45669.10-2026黄河流域工业用水定额第10部分:纯碱
- 天津市南开区天津大学附属中学2025-2026学年高一下学期期末考试历史试卷(文字版含答案)
- 青海省西宁市2025-2026学年第二学期期末调研测试卷 七年级生物学(文字版含答案)
- 四川水利职业技术学院单招职业技能考试题库及答案
- 陕西咸阳市永寿县甘井中学2025-2026学年度第二学期期末阶段作业七年级语文(文字版含答案)
- 国家开放大学《书法鉴赏》形考任务1-4完整答案
- 股骨颈骨折牵引的预防试题及答案
- 第三届全国生态环境监测专业技术人员大比武四川省赛试题库含答案
- 保安初级证书试题及答案
- 2026年浙江交通职业技术学院单招职业技能考试题库及答案
- (2026)全国应急管理普法知识竞赛试题库及答案
- 2026年河南省中考真题道德与法治试卷和答案
- 2026中国航空发动机集团总部招聘36人笔试备考题库及答案详解
- 2026年全国通信专业技术人员考试高、中级(通信专业实务终端与业务)模拟试题及答案
- 2026年初二物理基础测试题及答案
- 防灾减灾安全知识普及课件
- 体重管理门诊工作制度
- 建筑材料检测送检指南(机电类)
- 平台防腐施工方案(3篇)
- 北京市第四中学2026届高一数学第二学期期末联考试题含解析
- 2025年国控私募基金招聘笔试题库及答案汇编
评论
0/150
提交评论