【PHP开源代码栏目提醒】:网学会员在PHP开源代码频道为大家收集整理了“考勤系统安全性实现PHP+SQL论文 - 毕业设计“提供大家参考,希望对大家有所帮助!
第一章 概 述1.1
PHP 的概念
PHP: Hypertext Preprocessor 超文本预处理器 的缩写,它是一种服务器端的 HTML 脚本/编程语言是一种简单的、面向对象的、解释型的、健壮的、安全的、性能非常之高的、独立于架构的、可移植的、动态的脚本语言
PHP 是一种功能强大的脚本语言。
PHP 将击败 PERL/Python 并取而代之。
PHP 是下一代的 PERL/Python 脚本。
PHP 可以胜任任何 PERL/Python做的工作,并且做的更多,更好,更简洁!!1.2
PHP 在网络编程方面的优越性 1995 年时,Rasmus 在用
PHP 写他的个人主页;今天,
PHP 成为风靡全球的脚本语言, 连 越来越多的站点选择使用
PHP, Yahoo 都放弃了自己的脚本而改用
PHP 支持它的网站。
可以说,
PHP 是一个奇迹。
我一直认为,任何奇迹背后都有它的原因。
现在,就让我们透过这个奇迹,来看看
PHP 的成功之道。
1 简单易用
PHP 的入门门槛很低,它对使用者的要求微乎其微。
学过 C 语言的人,使用
PHP 几乎不需要什么时间。
它们的语法是如此相似,以至于我常常想,是不是在 C 语言变量前加个就能改成
PHP。
这使得大量 C 程序员在网络脚本中选择了
PHP。
另外,比起 ASP 的组件系统和 Java 庞大的类库来,
PHP的函数库要好学多了。
在编程风格上,
PHP 更是自由,你可以使用 N 种风格来写你的脚本程序。
这些特性使得
PHP 成为初学者的首选语言。
抢占初学者市场是很重要的策略。
如同任何人都会对自己的初恋记忆犹新一样,人们往往会对最初学习的语言有很深的感情。
即使后来自己成长了,改用其他语言了,还是会时时记起最初
学习的语言。
在这点上,
PHP 做得很出色。
2 剪裁得当
PHP 开发组是最了解网络的一群人,他们非常清楚用户要的是什么。
PHP 就是要做一个出色的网络脚本语言,而且,它只是要做一个
网络脚本语言。
PHP 提供的函数集在网络方面相当强大,而且重点均专注于网络应用。
像
PHP 中的无组件文件上传,超多数据库支持等特性都表现出这个特点。
顺便说一句,
PHP 甚至支持 ACCESS 数据库。
专注使得
PHP 在网络上表现出极其优秀的性能。
有失才能有得。
3 支持强大
PHP 有强大的 OpenSource 团体支持,在网络上有数以万计的
开源代码。
你可以整合几个现有程式来实现你的应用,也可以分析大师级的代码来得到提高。
PHP 还有很多扩展性的项目来增强
PHP 在某个方面的功能。
像注重编程规范化和代码重用的 PEAR,提供可编译模板技术的 Smarty,甚至开发桌面程序的 GTK。
分析完这几个理由,我们可以看出,
PHP 的成功得益于
PHP 开发组的战略眼光。
PHP 提供了一个最小
工作集,使用户能用最简单的方式高效地完成自己需要的应用。
这正是初学者需要的。
然后它通过方便的扩展来提供各个方面的解决
方案,这样,你只需要学你要用到的那个领域的东西。
当你涉及的领域越来越多时,你的水平也随之提高,当你熟悉了大多领域时,回头看看,会发现不知不觉已到山腰。
PHP 也提供了我们一种学习态度。
1.3 系统开发环境 一、操作系统—Windows xp 本系统使用的操作系统为 Windows xp 作为底层操作系统,界面友好,性能稳定。
二、数据库—MYSQL MySQL 是一个真正的多用户、多线程 SQL 数据库服务器。
SQL(结构化查询语言)是世界上最流行的和标准化的数据库语言。
MySQL 是以一个客户机/服务器结构的实现,它由一个服务器守护程序 mysqld 和很多不同的客户程序和库组成。
SQL 是一种标准化的语言,它使得存储、更新和存取信息更容易。
例如,你能用 SQL 语言为一个网站检索产品信息及存储顾客信息,同时 MySQL 也足够快和灵活以允许你存储记录文件和图像。
MySQL 主要目标是快速、健壮和易用。
最初是因为我们需要这样一个SQL 服务器,它能处理与任何可不昂贵硬件平台上提供数据库的厂家在一个数量级上的大型数据库,但速度更快,MySQL 就开发出来。
自 1996 年以来,我们一直都在使用 MySQL,其环境有超过 40 个数据库,包含 10000 个表,其中 500 多个表超过 7 百万行,这大约有 100 个吉字节GB的关键应用数据。
MySQL 建立的基础是业已用在高要求的生产环境多年的一套实用例程。
尽管 MySQL 仍在开发中,但它已经提供一个丰富和极其有用的功能集。
三、务器平台—APACHE Apache 伺服器则是目前最多 WWW 网站所采用伺服器。
您可以至http://www.apache.org 下载最新版的程式及相关文件,若您觉得从国外下载要很久的话,也可以用它的 Mirror 站台下载。
PHP 则可以去它的官方网站 http://www.
php.net 下载所需要的程式。
虽然目前 WindowsNT 或者 Windows98 等 Win32 的作业平台也能安装
PHP 及 Apache 伺服器,不过这似乎没什么道理,因为
PHP 和 Apache 在UNIX 下可以跑得更快更好。
当然,若想使用商业化的
作业平台,SUN、IBM、HP、DEC、SGI、NEC 等公司都有提供相关的 UNIX 或者是 WindowsNT 的作业平台。
加上高安全性调整过后的 Apache 伺服器:Stronghold 或是其它支援 SSL 的 Apache 版本。
这种组合,相信能满足商业化的需求。
而
PHP 就扮演着快速方便的 CGI 角色,让客户对站台的服务品质更加满意。
四、 发语言—
PHP PHP 是一种简单的,面向对象的,解释型的,健壮的,安全的,性能非常之高的,独立于架构的,可移植的,动态的脚本语言。
PHP 具有和 JAVA 类似的 Class 关键字。
因为不需要虚拟机,以致速度比 JAVA 快 5 倍。
PHP 正迅速变成一种标准的,多用途的,面向对象的脚本语言。
PHP 不仅可用来开发Web 应用
程序,也可以开发普通应用程序。
PHP 是一种功能强大的脚本语言。
PHP 将击败 PERL/Python 并取而代之。
PHPPHP 是下一代的 PERL/Python 脚本。
可以胜任任何 PERL/Python 做的工作,并且做的更多,更好,更简洁!!
PHP 是 Hypertext Pre-Processor(超文本预处理器)的缩写,它是一种服务器端的 HTML 脚本/编程语言。
PHP 语法上与 C 相似,可运行在 ApacheNetscape/iPlanet 和 Microsoft IIS Web 服务器上。
PHP 作为一种工具,可以让你创建动态的 Web 页面。
应用
PHP 的网页与常规的
HTML 页面并无二致,你可以用同样的方式来创建、编辑它们。
PHP 允许你直接在 HTML 文件里写入简单的脚本,这一点与 Javas cript 非常相似。
而不同的是,
PHP 不依赖于浏览器,是服务器端的语言,而
Javas cript 却是一种客户端的嵌在 HTML 中的语言。
概念上,
PHP 与 Netscape 的 LiveWire Pro 产品,Microsoft 的 ASP以及 SunMicrosystem 的 JSP 相似。
PHP 不仅可以用来创建 Web 应用程序,也可以用来开发普通的单机应用程序。
PHP 的强劲之处在于:
PHP 是一项最优秀的技术。
其它技术,如 PERL,Python, Tcl, VB script, ASP 相对来说,都是陈旧低劣的。
即使是 Java/
JSP,也在
PHP 之下。
开放源码 广泛的数据库连接 大量的扩展库 作为一种多用途的脚本语言,比 PERL,
VB s cript, ASP, JSP 都要优秀 第二章 系统的需求分析2.1 系统需求分析 需求分析的基本任务是准确的回答“ 系统必须做什么?”这个问题。
在需求分析这个阶段,需要仔细的研究系统所实现的功能,并进一步将他们具体化。
1.任务概述 目标 将学生考勤、平时成绩的评定、以及成绩查询的大量业务用
计算机系统操作完成,对它进行全面现代化管理,以便提高信息管理效率。
运行环境
软件:Microsoft Windows 2000 Server 及 Windows 2000 SPI 或更高版本 IE5.5 以上 硬件:64 MB RAM 鼠标或其他定点设备 系统要完成的任务 实现学生安全登录 实现网上签到 通过技术手段,避免学生冒名签到。
统计学生平时成绩。
实现网上成绩的查询。
2.功能需求系统必须完成的功能包括: 注册与登录功能 该功能主要实现学生与老师的安全登录。
签到功能 该功能主要实现学生上课网上签到,以减少老师点名签到的时间,提高 上课效率。
统计功能系统中的统计功能可以根据学生签到次数,统计学生的平时成绩。
查询功能 该功能从不同的角度进行查询,多层次地满足老师及学生对总成绩及个 人成绩的
查询要求。
2.2 总体设计 1.本课题研究的内容 本
论文从网站设计的基本原理出发,使用 php
mysql 技术,
PHP 是一个类似微软 ASP 的服务器端的嵌入式超文本处理语言,是建立动态网站的强大工具。
MySQL 是一个真正的多用户、多线程 SQL 数据库服务器。
MySQL 是以一个客户机/服务器结构的实现,它由一个服务器守护程序 my
sql 和很多不同的客户程序和库组成。
由于其源码的开放性及稳定性,且与网站流行编徎语言
PHP 的完美结合,现在很多站点都利用其当作后端数据库,使其获得了广泛应用。
而 MySQL 是一个轻型 SQL 数据库服务器,可运行在多种平台上,包括Windows NT 和 Linux,它还有一个 GPL 版本,MySQL 被认为是建立数据库驱动的动态网站的最佳产品。
PHP、MySQL 和 Apache 是 Linux 平台网站的最佳拍档。
通过对公共课网上系统的分析、设计与具体实施,从而具体介绍了基于Internet/Intranet 的网站应用系统的分布式架构模式及实现机理。
最后采用了 PHPMYSQL,
设计并实现了公共课网上系统 系统设计模型 2.此系统共分为六个较大的模块: (一). 注册模块 (二). 身份验证模块 (三).学生查询模块(四)、学生签到模块 、教师控制台模块 (五) (六)、学生出勤统计模块 在这七个模块当中共完成 19 项功能,分别如下: (一)注册模块 i. 新用户注册(教师或学生) ii. 用户
登陆(教师或学生) 登录界面 Index.
php教 师 注 册 学 生 注 册t_ sign up. ph p s_signup.
php 教师身份验证 t_infor.
php 学生身份验证 s_infor.
php 图 2-1 流程示意 (二)身份验证模块 i. 教师注册身份验证 ii. 学生注册身份验证 iii. 回答信息库中的个人信息 超级用户管理模块 s_answer.
php 验 证 失 败 通 过 验 证 s_fail.
php s_success.
php 图 2-2 流程示意 三学生查询模块 iv. 用户输入学号 v. 用户出勤信息查看学 生 查 询 模 块 s _ i n f o r . p h p查找 s_i nfo r.
php 数 据 库 查询结果 sss_infor.
php 图 2-3 流程示意(三)学生签到模块 i. 个人信息提取 ii. 签到结果查看学 生 信 息 显 示 s s _ i n f o r . p h p填加信息 ss_infor.
php插入信息 s_infor.asp 数 据 库 图 2-4 流程示意(四)教师控制台模块 iii. 开始学生签到 iv. 停止学生签到 v. 查看本次签到信息教 师 控 制 台 t _ i n f o r . p h p开 始 签 到停 止 签 到 数 据 库 流程示意图 2-5 (五)师期末统计模块 vi. 统计专业 vii. 统计年级viii. 点名次数 ix. 每次点名分数 学生出勤统计模块 l a s t . p h p 统计输入输入界 统计查看界面 面 Tttlast.
php L a s t . p h p 流程示意图 2-6 学生(表间关系) 主键 学生信息表 签到信息表 教师注册信息表 出勤统计表学号姓名 学号 学号 学号性别 姓名 姓名 姓名年龄 专业 专业 专业学历 年级 用户帐 出勤政治面 签到 号 次数貌 时间 用户密 缺席专业 签到 码 次数电话 主机 平时家庭地 分址母亲名父亲名 图 2-7爱好 教师信息表年级 编号 姓名 性别 年龄 教师注册信息表 专业 学历 政治面 貌 编号 电话 姓名 毕业院 用户 校 帐号 家庭地 用户 址 密码 母亲名 父亲名 图 2-8 爱好 第三章 设计与实施3.1 系统数据库设计 表 1 学生信息表(s_infor)中文名称 字段 类型 Null 默认学号 s_sno varchar10 否姓名 s_name varchar20 否性别 s_sex varchar2 否学历 s_xueli varchar10 否政治面貌 s_mianmao varchar10 否专业 s_pro varchar30 否电话 s_pho varchar11 否家庭地址 s_addr text 否母亲名 s_mname varchar20 否父亲名 s_fname varchar20 否爱好 s_love varchar30 否年级 s_gra varchar50 是 NULL 表 2 教师信息表(t_infor)中文名称 字段 类型 Null 默认编号 t_sno varchar10 否姓名 t_name varchar20 否性别 t_sex varchar2 否专业 t_pro varchar30 否学历 t_xueli varchar20 否政治面貌 t_mianmao varchar10 否电话 t_pho varchar11 否
毕业院校 t_gra varchar30 否家庭地址 t_addr text 否母亲名 t_fname varchar20 否父亲名 t_mname varchar20 否爱好 t_love varchar30 否 表 3 学生签到信息表(s_login)中文名称 字段 类型 Null 默认学号 s_sno varchar10 否姓名 s_name varchar20 否专业 s_pro varchar30 否年级 s_gra varchar10 否签到时间 s_time date 否 0000-00-00签到主机 ip text 是 NULL 表 4 学生注册信息表(s_signup)中文名称 字段 类型 Null 默认学号 s_sno varchar10 否姓名 s_name varchar20 否专业 s_pro varchar30 否用户帐号 s_zh varchar10 否用户密码 s_pasw varchar16 否 表 5 教师
注册信息表(t_signup) 中文名称 字段 类型 Null 默认编号 t_sno varchar10 否姓名 t_name varchar20 否用户帐号 t_zh varchar10 否用户密码 t_pasw varchar10 否 表 6 学生出勤统计表(Statistic) 中文名称 字段 类型 Null 默认学号 num varchar11 是 NULL姓名 name varchar30 是 NULL专业 pro varchar40 是 NULL出勤次数 pre_times varchar20 是 NULL缺席次数 absen_times varchar20 是 NULL平时分 scores varchar20 是 NULL 表 7 签到控制表(t_control) 中文名称 字段 类型 Null 默认标志位 falg char2 是 NULL 表 8 替名签到信息查看表t_view 中文名称 字段 类型 Null 默认学号 s_sno varchar10 否姓名 s_name varchar20 否专业 s_pro varchar30 是 NULL年级 s_gra varchar20 否签到时间 s_time date 否 0000-00-00签到主机 s_ip text 否3.2 系统基本流程1.注册 (1)下面是学生注册页: 图 3-1 (2)学生注册验证页:通过提出随机问题,实现用户安全注册。
防止他人注册。
图 3-2 如果
问题回答正确,显示“您已成功通过验证” 返回主页。
如果问题回答错误,显示“请仔细检查您的确认密码和学号是否正确”。
如果帐号已被注册,显示“此用户帐号已经被注册了,您无法再次进行注册”。
2.登录(1)用户登录页 图 3-3 注册后,系统将用户的帐号和密码插入数据库,用户正确输入帐号和密码,即可登录。
若输入的帐号和密码不正确。
显示“你输入的帐号或密码不正确,请重新输入”。
☆教师登录,进入教师控制台 图 3-4☆学生登录如果教师点击开始签到,学生登录进入签到页。
如果教师点击停止签到,学生登录进入成绩查询页。
3.签到(1)学生签到页 .