ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:197.72KB ,
资源ID:23282563      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23282563.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于PHP的签到系统的设计与实现.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于PHP的签到系统的设计与实现.docx

1、基于PHP的签到系统的设计与实现基于PHP的签到系统设计与实现摘要:伴随着时代的进步,企业与学校规模的不断扩大,员工及学生的数量也随之急剧增加, 那么有关员工及学生的各种数据信息也成倍的增长。但是面对如此庞大的信息量,我个人认为是有必要去开发一个员工签到登陆系统来提高企业管理员工队员工出勤管理的效率。 这样我们就可以减少许多不必要的资源开销, 节约人力资源,使企业可以更便利节约成本的考核员工的出勤。因此,本文在充分研究上述问题的基础上,设计一个应用于企业员工的签到系统,提高员工签到效率,降低了企业的人力成本。本文使用PHP,MySQL,实现了 B/S 结构的员工签到系统,PHP作为当前最主流的

2、网页制作语言,结合MySQL数据库来制作此签到系统,使得企业员工和签到系统管理员无论何时何地,都可以便捷的登录我们的系统,进行签到和信息的查询操作。关键词: 签到;企业;PHP;MySQL 第一章 绪论1.1 课题背景与研究意义可以说,现如今无论是大中小型企业还是学校,都要面临一个给员工/学生考勤的问题,员工的考勤记录是直接和员工的绩效挂钩,影响员工的评优评先;而学生的考勤记录则是直接和学生的课堂成绩挂钩,直接关系到学校学风的建设问题。鉴于考勤工作的重要性,我们需要一款能够协助企业考勤人员,学校老师完成考勤工作的签到软件,使之能够在企业中或者是学校内部正常使用。但是目前的一些签到软件还存在一些

3、问题,如我们常见的指纹打卡签到软件,虽然实施签到方便,人们只要把录入指纹的手指放在指纹打卡机上,打卡机读取用户指纹信息,再与数据库进行关联,调取用户信息,就可以自动完成签到。但是这种软硬件相结合的打卡装置存在一定缺陷:首先,硬件容易出故障,并且出现问题很难及时解决,这将会导致当天的签到不能正常进行;其次,对于小企业来说,购置指纹打卡器成本较高,维护起来也相对比较麻烦;最后,由于一套签到系统一般配置一个指纹打卡器,因此在签到的时候需要员工轮流打卡,降低了工作效率。此外,还有目前比较流行的RFID技术,同样是一款软硬件结合的签到系统,需要配置一个RFID电子标签和RFID阅读器,当用户走进RFID

4、阅读器的射频范围内的时候,就可以实现用户信息的读取,并通过RFID阅读器将信息传输至服务器中进行下一步的处理。虽然RFID技术的到来,解决了指纹打卡签到效率较低的问题,但是它的构建成本更大,也存在硬件损坏的风险。对于中小型企业和一般学校来说,更偏向于使用搭建成本较低,操作简单,用户友好的签到系统。而在本次课题的设计中,主要是针对企业用户,完成考勤签到工作,使之能够在企业内部正常使用,使用PHP语言进行编写,最后把完成的签到系统部署在服务器上,让用户能够直接通过IP地址访问签到系统,完成签到工作。因此,本文在充分研究上述问题的基础上,设计一个应用于企业员工的签到系统,提高员工签到效率,降低了企业

5、的人力成本。1.2 本文主要工作为了提高我国企业对员工考勤情况的管理水平,提高人力资源部门的统计效率,本课题将PHP语言引入到企业签到系统中,不仅可以实现企业员工的录入,还能够实现企业员工的正常上下班签到工作,通过浏览器实现员工的打卡签到,减轻人事部门负责人的工作量。我们结合课题背景以及文献资料的阅读,综合分析并考虑当前市面上的签到系统,并且在此基础上设计并实现了基于PHP的签到系统。论文的主要工作包括以下几个部分的内容。(1)针对当前学校学生、教师的考勤签到需求,对整个系统进行需求分析。明确系统地整体框架、工作流程等。(2)在需求分析的基础之上,确定系统的各个功能模块、进行系统设计和数据库设

6、计,综合利用 PHP技术最终实现系统。(3)实现员工到达公司后的自主签到,减少系统监测对人的依赖,提高系统自主性。本课题旨在设计利用PHP技术,实现企业员工签到的数字化、信息化、自动化,为推进企业考勤制度的规范化、提高企业现代化管理水平创造良好条件。第二章 技术简介2.1 WEB应用开发随着互联网的高速发展,网络技术早已从普通的静态网页发展到普遍具有交互功能的动态网页,才能满足人对网页的各种需求。目前网页开发的设计中最常见的结构就是B/S结构,通过一个浏览器,实现用户与服务器之间的信息交互,交互过程如图2-1所示。用户直接操作客户端浏览器,通过鼠标的点击产生事件,通过浏览器向Web服务器发起请

7、求,服务器收到来自用户的请求,为了对其做出反馈,服务器利用中间件调取数据库服务器中的数据信息,再返回相应信息。此时,服务器调取出的数据信息就可以直接在浏览器访问的网页上进行显示。这个过程就是B/S结构中信息交互的过程。Web数据库技术即是B/S结构,就是我们常用的浏览器服务器模式,通过Web服务器及中间件访问数据库。图2-1 动态页面生成过程2.2 PHP架构本次课题将使用PHP语言开发基于PHP的签到系统,首先要对这个语言和其开发环境有所了解。我们都知道,PHP语言可以说是目前为止用来制作网页做常见的语言之一了,目前很多国内外大型的网站都是采用PHP技术开发完成的。在选择网页开发语言的时候,

8、经常会有人拿PHP语言和Java EE相对比,因此这两者都是很经常被用来开发网站,制作网页。不可否认的是,Java EE在金融方面的网站制作上更加受到开发人员的青睐,其原因就在于Java在支付安全上更具有保障。虽然PHP在安全性方面不如Java EE,但是PHP语言的成本低,学起来简单,开发周期短。对于实现同一个功能的网站,使用PHP语言进行开发的时间周期可能只是使用Java EE语言进行开发周期的一半。此外,更重要的是,PHP语言开发的网站响应速度快,性能方面胜过Java EE。这样在面对访问量的情况下,使用PHP语言开发的网站的服务器成本明显低于Java EE语言开发的网站的服务器成本。2

9、.3 MySQL数据库MySQL是一种的数据库管理系统,它是一种开源、免费的数据库应用,一般小型用户用比较合适,与PHP、JSP配合使用比较多。MySQL数据库体积小,将其安装在服务器上所耗费的时间很少,运行起来也不大占用系统内存;MySQL数据库运行速度快,执行SQL语句的效率高,可以很快得到数据增删改查的结果;MySQL数据库成本低,很明显由于MySQL数据库本身是一种免费的应用,因此对于一些小型项目开发是很有利的。本系统设计中用的就是 MySQL数据库,易于操作,速度快,简洁方便。第三章 系统需求分析3.1 业务分析本系统的业务逻辑设计主要应遵照以下几方面原则。(1)简易性本系统主要用户

10、为企业员工,操作界面上应满足简易性。而简易的操作界面能在短时间里高度的增加用户使用程度,也使用户的有效使用率更高。(2)安全性系统安全性强,采用的是多权限多角色的登录设置,在用户进入系统前首先要经过身份认证,对于不同的用户角色他们所能够进行的操作也不同,从而保证了系统的安全性和稳定性。(3)实用性系统实用性强,对于一个系统,它的操作体验可以说不是最重要的,评判一个系统好坏最核心的标准就是查看这个系统是否满足系统设计的业务需求,是否提高了人们的效率。基于PHP的签到系统要对涉及到的业务流程要有清晰的分析并体现在实际效果中,对于不同的业务要求都能够满足。(4)系统可扩展性强考虑随着互联网的进步,会

11、有越来越多的领域涉及签到业务,因此也对签到系统的可扩展性提出了要求。因此我们在进行签到系统设计的时候,要在开发该管理系统时要做好预留工作,这样系统就具有较好的可拓展性和开发性,较好地适应未来的变化与发展。3.2 系统用户设计在系统安全性的设计中,用户权限的设计必不可少,这一点在B/S系统中尤其明显。因为B/S系统里主要是使用一个浏览器进行系统界面的登录,如果没有设计登录检测和权限管理,没有经过身份认证的用户就可以随意访问系统中的所有功能,这对系统的安全是一个很大的危害。档案工作是一个高度保密的工作,因此,我们在设计系统时应加入一个或者多个权限权限来约束系统访客。而对于不同职责的人员,我们不可能

12、分配给他们一样的操作权限,因此在系统中设计用户管理模块,起到管理用户信息,根据用户角色划分操作权限的作用,不同的身份就有不同的权限。而在本文设计的基于PHP的签到系统设计中,我们将用户操作权限分为以下两个:(1)系统管理员:具有整个签到系统最高的操作权限,可以维护企业内部的员工信息,并且查看员工的签到记录。(2)普通员工:由系统管理员进行统一的管理,具有修改自身信息的操作权限。此外,普通员工是整个系统的签到功能的执行者,负责进行上下班的签到打卡。3.3需求分析经过上文的分析,本课题设计的签到系统需要完成以下功能:(1)系统登录:为了维护基于PHP的签到系统的安全性,防止陌生访客随意进入系统,修

13、改系统数据,签到系统需要在进入系统前进行用户的身份认证。员工需要提供他们的员工编号以及员工密码方可登录系统,进行接下来进一步的操作。(2)签到功能:这是本次基于PHP的签到系统最核心的功能,即在系统中实现签到功能。本系统要求员工在上下班的时候都在登录系统中进行签到,因为本系统设置只能在内网中运行,员工不能在家里通过外网进入本系统,因此保证了员工签到的时候肯定是身处在公司里。员工完成签到后,相关的签到信息就会被保存在数据库中,以便进行存档。(3)员工管理:该功能由系统管理员操作,实现了前台登录和后台管理人员身份信息和操作权限的管理,本次设计的签到系统的员工管理模块功能就是实现系统操作用户身份信息

14、的维护,在该模块中管理员工的登录账号、密码,查看用户的身份信息,并可以根据实际业务需求添加新员工,删除旧员工。(4)考勤管理:该功能同样是由系统管理员操作。在签到功能中介绍了本次基于PHP的签到系统在员工完成签到后,相关的签到信息就会被保存在数据库中,以便进行存档。而考勤功能正是由系统管理员调取保存在数据库中的考勤信息,进行查阅。(5)模块化设计,各个相互独立的类模块组成了系统,这样的设计保证了每个模块的独立性,降低了编程设计开发的工作量。第四章 系统概要设计4.1 系统业务流程设计4.1.1 修改密码业务流程 修改密码业务流程如图4-1所示。图4-1 修改密码流程图从图中我们可以看出,修改密

15、码需要经过两次检测。首先,系统需要判断用户输入的旧密码是否跟数据库中的密码匹配;其次,系统需要判断用户两次输入的新密码是否完全一致。如果这两次检测均通过,则密码修改成功,旧密码在数据库中更新为新密码。4.1.2 员工信息管理业务流程 员工管理业务流程如图4-2所示。图4-2 员工管理结构图从图中我们可以看出,系统对员工的管理主要包括两个方面:第一是员工信息的查询,管理员可以查询所有员工的信息,而员工本身只能看到自己的信息;第二是对签到员工的添加,只有记录在数据库中的员工才可以签到。员工的添加由系统管理员完成,添加后员工信息保存至数据库中。4.2 系统数据库设计本文根据系统所面对的关系对象,采用

16、相应的方式来对其进行映射,并在服务器中建立关系数据库,通过关系数据库的建立将对象与相应的数据进行结合。对于员工签到管理系统的数据库设计,本文将给出系统的数据库设计表结构及描述。所有数据表的表结构如下:(1) 员工信息表该表主要用来记录员工信息,其表结构如表4-1所示:表4-1 员工信息表字段名称数据类型说明StaffIdNvarchar(20)员工编号DepartIdNvarchar(20)部门编号StaffNameNvarchar(20)员工名KeysNvarchar(20)密码PriviligesNvarchar(20)职务GenderNvarchar(20)性别AgeNvarchar(2

17、)年龄BirthdayNvarchar(50)出生日期PhoneNvarchar(20)联系方式AddressNvarchar(20)联系地址(2)员工签到表该表主要记录了员工签到信息,其表结构如表4-2所示:表4-2 员工签到表字段名称数据类型说明CheckInNvarchar(50)签到时间StaffIdNvarchar(20)员工编号DepartIdNvarchar(20)部门编号PriviligesNvarchar(20)职务GenderNvarchar(20)性别(3)部门表该表详细记录了部门信息,其表结构如表4-3所示:表4-5 部门表字段名称数据类型说明 DepartIdNvar

18、char(20)部门编号 DepartNameNvarchar(20)部门名称(4)考勤统计表该表记录了考勤统计信息,其表结构如表4-4所示。表4-4考勤统计表字段名称数据类型说明StaffIdNvarchar(20)员工编号TimeNvarchar(50)时间DepartIdNvarchar(20)部门编号StaffNameNvarchar(20)员工名DepartNameNvarchar(20)部门名称PriviligesNvarchar(20)职务GenderNvarchar(20)性别AgeNvarchar(2)年龄FrequencyNvarchar(20)次数ATTNvarchar(

19、20)考勤是否有效TypeNvarchar(20)类别第五章 详细设计5.1登录界面为了维护基于PHP的签到系统的安全性,防止陌生访客随意进入系统,修改系统数据,签到系统需要在进入系统前进行用户的身份认证。如图5-1所示,是本文设计的员工签到系统的登录界面,我们在登录系统的时候需要输入的信息只有员工编号和密码这两个部分。尽管在本文设计的基于PHP的签到系统设计中,我们将用户操作权限分为系统管理员和普通员工这两个操作角色,但是为了让系统的操作更加简便,减轻代码量,我们没有分开设计管理员和员工两个登录界面,而是采用如图5-1所示的统一登录。用户在输入正确的编号和密码后,系统与数据库交互,调取当前登

20、录用户的角色,再根据角色的不同跳转到相应的管理员界面或员工操作界面。图5-1 登录页面PHP登录界面处理用户登录动作,获取员工编号和员工密码后,连接数据库文件,检测用户名和密码的准确性,核心代码如下所示:$username = htmlspecialchars($_POSTusername); $password = MD5($_POSTpassword); include(conn.php); $check_query = mysql_query(select userid from user_list where username=$username and password=$passw

21、ord limit 1); if($result = mysql_fetch_array($check_query) session_start(); $_SESSIONusername = $username; $_SESSIONuserid = $resultuserid; echo $username, 欢迎你!进入 用户中心; echo 点击此处 注销 登录!; exit; 5.2员工信息查询界面如图5-2所示,我们模拟一个名为“张三”的普通员工在登录系统后的个人信息操作界面。在这里,用户可以进行查看个人信息,修改登录密码等操作。图5-2 员工信息查询页面5.3 员工密码修改界面管理员

22、在添加员工的时候,签到系统会自动为该名员工设置一个简单的初始密码,这个初始密码是所有员工都一样的。那么,为了提高系统的安全性,防止出现某些员工登录别人帐号的时间发生,员工在第一次登录系统的时候需要及时地修改自己的密码,点击图5-2右上方的“修改密码”链接,系统自动跳转到图5-3所示的员工密码修改页面。员工需要输入旧密码,两次输入完全一致的新密码,待数据库进行验证后方可以修改成功。图5-3 员工修改密码页面在员工密码修改功能中,最主要的就是需要进行原始密码的验证,即取得用户输入的旧密码,并将其与数据库中的原始密码进行比对,如果比对成功,则系统运行员工修改密码;反之,系统发出警告提示。原始密码部分

23、的验证部分的代码由PHP完成,如下所示:Query($sql);5.4 员工信息添加管理员对员工信息进行一系列的操作,以下是员工信息的添加页面,如图5-4所示,管理员需要填写员工个人信息,员工编号(由系统自动分配),员工名,部门编号,密码,权限,性别,年龄,出生日期,联系方式,地址等信息。图5-4 员工信息添加页面管理员输入员工信息,点击添加按钮。添加员工连接数据库的代码如下所示:connect_error) die(连接失败: . $conn-connect_error); $sql = INSERT INTO MyGuests (firstname, lastname, email)VAL

24、UES (John, Doe, john);if ($conn-query($sql) = TRUE) echo 新记录插入成功; else echo Error: . $sql . . $conn-error;$conn-close();?5.5 签到查询在签到功能中介绍了本次基于PHP的签到系统在员工完成签到后,相关的签到信息就会被保存在数据库中,以便进行存档。而考勤功能正是由系统管理员调取保存在数据库中的考勤信息,进行查阅。如图5-5所示,系统管理员可以查看员工编号,部门编号,职务,性别,签到时间等信息。此外,管理员也可以根据某个条件进行精确查询,可精确查询的字段分别有员工编号,职位,部

25、门编号以及签到时间。管理员输入其中一个或多个条件,系统自动生成相应的SQL语句,在数据库中运行并返回结果。图5-5 员工签到查询第六章 设计测试实验6.1 测试目的在前文当中对签到系统进行具体分析与设计,并对系统进行了实现,但在系统投入运行的过程中还需要从多个方面加以保障,其中首先要求设计的系统要能够满足实际工作的需要。因此我们需要对设计出的系统进行全面的性能检测。在此,主要以黑盒子测试技术为载体,对整个系统中的各功能模块进行检测,然后通过白盒子来对系统内部各模块间的逻辑架构进行检测,这样才能够保证系统的设计能够符合现实需要,最终让设计的系统能够达到我们之前的预期。6.2 测试结果整个设计围绕

26、使用了PHP语言和Mysql数据库结合实现签到系统的运行和维护,但是设计的是否成功还是得需要测试结果才能确定,对此为了保证设计的可靠性,我对本设计进行了测试,确认其可以正常的工作运行,详情记录在了表6-1中。表6-1 测试结果测试项目预期结果测试结果代码是否能运行是是系统是否能自动生成初始账号密码是是系统是否能正常登陆是是签到完毕系统是否会自动跳完成是是系统是否能修改密码是是系统是否正常退出是是6.3总结本系统基本实现登陆,获取账号密码,签到签退等功能,因设计网络技术,所有功能机会需在有网络下进行,系统测试部分为整个设计最不可或缺的部分,是对设计的功能实用性、可维护性的检测,本次测试基本实现了

27、总体设计里的功能模块。结论传统的员工考勤方式,往往需要专人采用手工方式对企业员工每天的正常出勤、缺勤等状态进行记录,这种方式费时费力,且准确率差、透明度不高,容易受到人为因素的影响,同时增加企业的负担,也不利于企业的信息化建设。因此,本文在充分研究上述问题的基础上,设计一个应用于企业员工的签到系统,提高员工签到效率,降低了企业的人力成本。使用PHP语言,MySQL数据库,实现了 B/S 结构的员工签到系统,使得企业员工和系统管理员无论何时何地,都可以方便的登录系统,进行签到和信息的查询操作。本文的主要工作可以总结为以下几个方面。第一,在对系统相关背景较为了解的基础上,对签到系统的数据流程进行了

28、分析,从整体业务入手,设计系统总目标,并对系统进行需求分析,将系统分为员工签到,员工管理,部门管理,考勤统计这四个主要功能。第二,在需求分析的基础上,设计主要业务流程,在此之上进行了数据库的概念模型设计等。第三,为了方便用户的操作,系统采用了模块化设计的思想,通过各模块的不同组合以实现不同的增、删、改、查功能。最终,使该系统能够具有规范化的格式、完整的信息量和易于查询等的特点。在撰写本论文的过程当中,由于写作时间有限,而且加上对该技术的研究有一定的研究条件的限制,本课题对于签到系统的应用探索还不够深入,目前也只实现了档案业务中较为常见的功能操作。本人认为这些是最基本的研究,在这个基础上还可以进

29、行更深层次的研究,拓展系统功能。参考文献1张艳华, 郑丽英. 基于Web的网络签到系统设计与实现J. 甘肃科技, 2005, 21(3):73-74.2张志平, 姜晓峰. 基于WEB的实验课签到系统设计与实现J. 苏州大学学报(工科版), 2006, 26(2):43-45.3刘翔, 胡彧, 韩书. 基于二维码的会议签到系统设计J. 电子器件, 2014(5):1013-1016.4冯战申, 昝东旺. 基于B/S构架的电子签到系统的设计与实现J. 许昌学院学报, 2003, 22(2):96-98.5王凤玲. 基于PHP+MYSQL的新闻发布系统的研究与实现J. 计算机应用与软件, 2012, 29(2):234-236.6肖维明. 基于PHP+MySQL的网站开发J. 物流工程与管理, 2009, 31(6):90-92.7张金区, 王云鹏. PHP对数据库的访问技术及执行效率的比较J. 计算机工程与应用, 2005, 41(9):167-170.8周启海, 刘云强. 基于PHP、MYSQ

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1