• (附源码)php企业招聘网站 毕业设计 222219


    企业招聘网站

    摘 要

    随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,企业招聘网站当然也不能排除在外。企业招聘网站是以实际运用为开发背景,运用软件工程开发方法,采用互联网技术构建的一个管理系统。整个开发过程首先对软件系统进行需求分析,得出系统的主要功能。接着对系统进行总体设计和详细设计。总体设计主要包括系统总体结构设计、系统数据结构设计、系统功能设计和系统安全设计等;详细设计主要包括模块实现的关键代码,系统数据库访问和主要功能模块的具体实现等。最后对系统进行功能测试,并对测试结果进行分析总结,及时改进系统中存在的不足,为以后的系统维护提供了方便,也为今后开发类似系统提供了借鉴和帮助。

    企业招聘网站采取Mysql作为后台数据的主要存储单元,运用软件工程原理和开发方法,采用PHP的Thinkphp技术构建的一个管理系统,实现了本系统的全部功能。完成系统的主要模块的页面设计和功能实现。本文展示了首页页面的实现效果图,并通过代码和页面介绍了用户注册功能、职位分类、招聘职位、职位应聘和面试邀约等功能的实现过程。

    关键词:企业招聘网站; php;

    Enterprise recruitment website

    Abstract

    With the rapid development of science and technology, all aspects of society and all walks of life are trying to integrate with modern advanced technology and improve their own advantages through scientific and technological means. Of course, enterprise recruitment websites cannot be excluded. Enterprise recruitment website is a management system based on practical application, software engineering development method and Internet technology. The whole development process first analyzes the requirements of the software system and obtains the main functions of the system. Then the overall design and detailed design of the system are carried out. The overall design mainly includes the overall system structure design, system data structure design, system function design and system security design; The detailed design mainly includes the key code of module implementation, system database access and the specific implementation of main function modules. Finally, the function of the system is tested, and the test results are analyzed and summarized to improve the shortcomings of the system in time, which not only provides convenience for future system maintenance, but also provides reference and help for the development of similar systems in the future.

    The enterprise recruitment website adopts MySQL as the main storage unit of background data, uses software engineering principles and development methods, and uses php ThinkPHP technology to build a management system, which realizes all the functions of the system. Complete the page design and function realization of the main modules of the system. This paper shows the implementation effect of the home page, and introduces the implementation process of user registration function, position classification, recruitment position, position application and interview invitation through code and page.

    Key words: Enterprise recruitment website; php;

    目  录

    第1章 绪论

    1.1 研究背景与意义

    1.2 开发现状

    1.3 论文组成结构

    第2章 相关技术介绍

    2.1开发技术

    2.2 MVVM模式介绍

    2.3 MYSQL数据库

    2.4 B/S结构

    2.5 Thinkphp框架介绍

    第3章 系统分析

    3.1 可行性分析

    3.1.1 经济可行性

    3.1.2 技术可行性

    3.1.3 操作可行性

    3.2 功能性需求分析

    3.3 非功能性需求分析

    第4章 系统设计

    4.1 功能模块设计

    4.2 数据库设计

    4.2.1 概念模型设计

    4.2.2 数据库逻辑设计

    4.2.3 数据库表设计

    第5章 系统实现

    5.1 用户登录的实现

    5.2 系统前台主要功能实现

    5.2.1 首页的实现

    5.2.2 用户注册的实现

    5.2.3 企业新闻的实现

    5.2.4招聘职位列表的实现 21

    5.3 系统后台主要功能实现

    5.3.1 用户管理的实现

    5.3.2 招聘职位管理的实现

    5.3.3 求职简历管理的实现

    5.3.4 面试邀约管理的实现

    第6章 系统测试

    6.1 系统可靠性测试

    6.2 系统功能性测试

    6.3 系统合格性测试

    6.4 测试结果

    第7章 总结与展望

    参考文献

    致谢

    1. 绪论
      1. 研究背景与意义

    随着社会的快速发展,计算机的影响是全面且深入的。人们生活水平的不断提高,日常生活中人们对求职企业招聘网站方面的要求也在不断提高,需要求职招聘的人数更是不断增加,使得企业招聘网站的开发成为必需而且紧迫的事情。企业招聘网站主要是借助计算机,通过对企业招聘网站所需的信息管理,增加用户的选择,同时也方便对广大用户信息的及时查询、修改以及对用户信息的及时了解。企业招聘网站对求职用户带来了更多的便利,该系统通过和数据库管理系统软件协作来满足求助用户的需求。 计算机技术在现代管理中的应用,使计算机成为人们应用现代技术的重要工具。能够有效的解决获取信息便捷化、全面化的问题,提高效率。

      1. 开发现状

    随着国内经济形势的不断发展,中国互联网进入了一个难得的高峰发展时期,这使得中外资本家纷纷转向互联网市场。 然而,许多管理领域的不合理结构,人员不足以及管理需求的增加使得更多的人具备了互联网管理的意识。

    在当今高度发达的信息中,信息管理改革已成为一种更加广泛和全面的趋势。 “求职企业招聘网站”是基于Mysql数据库,在PHP的Thinkphp技术程序设计的基础上实现的。为确保中国经济的持续发展,信息时代日益更新,蓬勃发展。同时,随着信息社会的快速发展,企业招聘网站面临着越来越多的信息,因此很难获得他们对高效信息的需求,如何使用方便快捷的方式使查询者在广阔的海洋信息中查询,存储,管理和共享信息方面有效,对我们的工作和生活具有重要的现实意义。因此,国内外学术界对此进行了深入而广泛的研究,一个新的研究领域——求职企业招聘网站诞生了。

      1. 论文组成结构

    根据市场调研得到的信息数据,结合国内外前沿研究,利用相关系统开发和设计方法,最终设计出企业招聘网站。

    本文共有七章,如下所示。

    第一章概述了企业招聘网站的研究目的和意义;精炼地总结了国内外在内的领域研究情况和未来的研究趋势,最后给出了论文的组成结构。

    第二章简要概述了本文所用的开发技术和工具。

    第三章简要对系统各业务流程进行需求分析、可行性分析。

    第四章对企业招聘网站进行设计。

    第五章对企业招聘网站进行实现,并贴出相关页面截图,语言描述出具体功能实现的操作方法。

    第六章对企业招聘网站采用测试用例的方式来对一些主要功能模块测试,最后得出测试结果。

    第七章总结全文并对未来的研究做出展望。

    1. 相关技术介绍
      1. 开发技术

    本系统前端部分基于MVVM模式进行开发,采用B/S模式,后端部分基于php的Thinkphp框架进行开发。

    前端部分:前端框架采用了比较流行的渐进式JavaScript框架Vue.js。使用Vue-Router和Vuex实现动态路由和全局状态管理,Ajax实现前后端通信,Element UI组件库使页面快速成型。

    后端部分:采用Thinkphp作为开发框架,同时集成Redis等相关技术。

      1. MVVM模式介绍:

    MVVM是Model-View-ViewModel的简写。它本质上就是MVC 的改进版。MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开。当然这些事 ViewModel 已经帮我们做了,它可以取出 Model 的数据同时帮忙处理 View 中由于需要展示内容而涉及的业务逻辑。微软的WPF带来了新的技术体验,如Silverlight、音频视频3D动画……,这导致了软件UI层更加细节化、可定制化。同时,在技术层面,WPF也带来了 诸如Binding、Dependency Property、Routed Events、Command、DataTemplate、ControlTemplate等新特性。MVVM(Model-View-ViewModel)框架的由来便是MVP(Model-View-Presenter)模式与WPF结合的应用方式时发展演变过来的一种新型架构框架。它立足于原有MVP框架并且把WPF的新特性糅合进去,以应对客户日益复杂的需求变化。

      1. MYSQL数据库

    网站的开发必须配套相应数据库,数据库具有一定的组织结构,能够存放和管理数据信息,在以前数据库的功能仅仅是数据保存和管理操作,但是时代的变迁和发展,现在的数据库演变成了数据处理的方式,数据库从最开始的简单存放数据表格信息到现在的能够存放成千上万数据的大型数据库,期间还是经历了许多的改革。

    本次开发的管理系统使用的数据库是MYSQL数据库,该数据库运行速度快,安全性能也很高,而且对使用的平台没有任何的限制,所以被广泛应运到系统的开发中。MySQL是一个开源和多线程的关系管理数据库系统,MySQL是开放源代码的数据库,具有跨平台性,虽然功能未必强大,导致很多人都了解这个数据库的基本应用,在数据库中,总共建立了10几个表,这里面每个表都是相对应的,都各自有各自的联系,数据库意义重大,如果没有数据库的链接,就没办法运行程序,这显然可以看见数据库与程序的重要性,是紧密相连接的。

      1.   B/S结构

    B/S(浏览器/服务器)结构是目前主流的网络化的结构模式,它能够把系统核心功能集中在服务器上面,可以帮助系统开发人员简化操作,便于维护和使用。只需要用户在客户端安装360浏览器、谷歌浏览器、QQ浏览器等当前大众浏览器,在电脑里面安装sqlserver、mysql数据库等数据库。安装好的浏览器与服务器端的数据库进行信息数据的交互。很多专门软件能够做到的事情,采用B/S结构模式也能实现,它能够结合Web浏览器技术,ActiveX技术以及多种脚本语言等技术。帮助程序开发者节约了不少开发成本。目前B/S结构成为程序开发主流结构,它最好的地方就是没有地点限制还不用专门安装软件,笔记本或者电脑能够上网就能访问系统。系统使用B/S进行开发在后期系统维护上面就会很省事,不用什么问题都在服务器上面操作,简单的客户端处理就解决部分问题,开发出来的程序跟用户交互性上面也会增强,还可以实时刷新浏览器进行程序局部的数据信息更新。

     

    图1-1 B/S模式三层结构图

      1. Thinkphp框架介绍:

    ThinkPHP是为了简化企业级应用开发和敏捷WEB应用开发而诞生的。最早诞生于2006年初,2007年元旦正式更名为ThinkPHP,并且遵循Apache2开源协议发布。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进。  

    ThinkPHP是一个快速、兼容而且简单的轻量级国产PHP开发框架,诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP,遵循Apache2开源协议发布,从Struts结构移植过来并做了改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结构和MVC模式,融合了Struts的思想和TagLib(标签库)、RoR的ORM映射和ActiveRecord模式。

    ThinkPHP可以支持windows/Unix/Linux等服务器环境,正式版需要PHP5.0以上版本支持,支持MySqlPgSQLSqlite多种数据库以及PDO扩展,ThinkPHP框架本身没有什么特别模块要求,具体的应用系统运行环境要求视开发所涉及的模块。

    作为一个整体开发解决方案,ThinkPHP能够解决应用开发中的大多数需要,因为其自身包含了底层架构、兼容处理、基类库、数据库访问层、模板引擎、缓存机制、插件机制、角色认证、表单处理等常用的组件,并且对于跨版本、跨平台和跨数据库移植都比较方便。并且每个组件都是精心设计和完善的,应用开发过程仅仅需要关注您的业务逻辑。

    1. 系统分析
      1. 可行性分析

    本系统将在经济、技术、操作这三个角度上进行可行性分析。

        1. 经济可行性

    整个系统从设计到开发以及测试过程严谨步骤齐全,所有工作任务全部由本人完成,并未获取外部技术支持,节约了一切服务成本开销以及人工成本,在硬件方面,为节约成本使用一台二手移动工作站作为项目部署服务器以及数据库服务器,成本在一万元一下,真个网络部署也是由本人独立完成不涉及到其他人工费用,整个开发过程本着低成本,低消耗的原则。

        1. 技术可行性

    技术可行性分析的目的是确认该系统能否利用现有技术实现,并评估开发效率和完成情况。技术的可行性是指在当前的技术条件下,计算机软件和硬件的开发是否能够满足发展的要求。因为该系统的开发基于VUE框架,所以开发该系统所需的软件和硬件条件可以在普通计算机上满足。因为它占用的内存相对较少,所以用Mysql数据库开发和设计软件理论上没有问题,因为它占用的内存太少。上述技术可以有效地保证系统的成功和高效开发。

        1. 操作可行性

    化妆品销售管理系统的使用界面简单易于操作,采用常见的界面窗口来登录界面,通过电脑进行访问操作,用户只要平时使用过电脑都能进行访问操作。此系统的开发采用PHP技术开发,人性化和完善化是B/S结构开发比较显要的特点使得用户操作相比较其他更加简洁方便。易操作、易管理、交互性好在本系统操作上体现得淋漓尽致。

      1. 功能性需求分析

    前台需求:

    (1)用户模块:主要包括用户的注册和登陆、用户个人信息管理和用户帐单查询等功能。

    (2)企业介绍模块:主要包括企业整理介绍、所在城市、招聘岗位、职位详情、用户可以搜索企业信息介绍等功能。

    (3)招聘职位模块:主要展示企业发布的招聘信息,职位信息,用户可以在系统搜索某个企业招聘职位详情等功能。

    (4)简历投递模块:求职用户可以在线提交个人简历,企业招聘人员可以查看求职者投递的个人简历,管理员对简历信息数据项进行维护管理。

    (5)面试邀请模块:主要用户企业招聘者对求职用户发布面试邀请,求职用户可以回复企业。

    (6)职位邀约模块:用户企业向求职者发布职位邀请。

    后台需求:

    (1)用户管理:主要包括用户列表、用户数据管理等功能。

    (2)招聘职位管理:主要包括招聘职位列表、职位详情、工作性质、工作城市数据项管理等功能。

    (3)求职简历管理:主要包括求职者个人信息、学历信息、简历信息等数据项管理功能。

    (4)面试管理:主要对企业对求职用户发布的面试邀请信息数据项管理功能。

    (5)企业介绍管理:主要用户首页展示的企业资讯,企业具体信息数据项管理共功能。

    系统用例图如下所示。

     

    图3-1系统用例图

    招聘职位用例描述如下表所示。

    表3-1招聘职位用例描述

    用例名称

    添加新职位

    参与者

    管理员

    用例概述

    本用例用于管理员进行添加新职位操作

    前置条件

    管理员添加新职位前必须登录系统

    后置条件

    系统中添加一个新职位

    基本事件流

    参与者动作

    系统响应

    1. 管理员在后台主界面选择“新职位”。

    4、管理员填写新职位信息,点击“添加”按钮。

    2、系统打开添加新职位界面。

    3、系统检查管理员输入的职位信息是正确有效的。

    5、系统将招聘职位到数据库中。

    6、系统提示“操作成功”。

    7、系统跳转到职位管理界面。

    其他事件流

    1、系统验证管理员输入的职位名为空,则提示“*请填写职位名称!”。

    2、系统验证管理员输入的价格不是货币格式,则提示“*价格必须是货币格式!”

    职位删除用例描述如下表所示。

    表3-2职位删除用例描述

    用例名称

    删除职位

    参与者

    管理员

    用例概述

    本用例用于管理员进行删除职位操作

    前置条件

    管理员删除职位前必须登录系统

    后置条件

    系统中删除一个职位

    基本事件流

    参与者动作

    系统响应

    1、管理员在后台主界面选择“职位管理”。

    4、管理员选择一个职位,点击“删除”按钮。

    6、管理员点击“确定”按钮。

    2、系统从数据库中获取职位信息列表

    3、系统打开职位列表界面。

    5、系统提示“你确定要删除吗?”。

    7、系统将职位从数据库中删除。

    8、系统提示“删除成功”。

    9、系统跳转到职位管理界面。

    其他事件流

    职位分类用例描述如下表所示。

    表3-3职位分类用例描述

    用例名称

    分类职位

    参与者

    管理员

    用例概述

    本用例用于管理员进行分类职位操作

    前置条件

    管理员分类职位前必须登录系统

    后置条件

    系统中分类一个职位

    基本事件流

    参与者动作

    系统响应

    1、管理员在后台主界面选择“职位管理”。

    4、管理员选择一个职位,点击“分类”按钮。

    6、管理员点击“确定”按钮。

    2、系统从数据库中获取职位信息列表

    3、系统打开职位列表界面。

    5、系统提示“你确定要分类吗?”。

    7、系统将职位从数据库中分类。

    8、系统提示“分类成功”。

    9、系统跳转到职位管理界面。

    其他事件流

    用户编辑用例描述如下表所示。

    表3-4用户编辑用例描述

    用例名称

    修改用户

    参与者

    管理员

    用例概述

    本用例用于管理员进行修改用户信息操作

    前置条件

    管理员已经登录系统

    后置条件

    系统中更新一条用户记录

    基本事件流

    参与者动作

    系统响应

    1、管理员在后台主界面选择“用户管理”。

    4、管理员在用户列表中选择一个用户,点击“编辑”按钮。

    6、管理员填写用户信息,点击“保存修改”按钮。

    2、系统从数据库中获取用户信息。

    3、系统打开用户列表界面。

    5、系统打开修改用户信息界面。

    7、系统将更改后的添加到数据库中。

    8、系统提示“操作成功”。

    9、系统跳转到用户管理界面。

    其他事件流

    职位应聘用例描述如下表所示。

    表3-5职位应聘用例描述

    用例名称

    职位应聘

    参与者

    用户

    用例概述

    本用例用于用户进行对职位应聘操作

    前置条件

    用户已经登录系统

    后置条件

    系统中增加一条用户投递记录

    基本事件流

    参与者动作

    系统响应

    1、用户在前台首页选择任意一个职位分类。

    4、管理员在用户列表中选择一个职位。

    7、用户填写职位应聘,点击“投递”按钮。

    2、系统从数据库中获取职位列表信息。

    3、系统打开职位应聘界面。

    5、系统从数据库中获取职位信息。

    6、系统打开职位信息及投递界面。

    8、系统检查用户输入的信息是正确有效的。

    9、系统将职位应聘记录添加到数据库中。

    其他事件流

    1、系统验证用户输入的字段为空,则提示“*投递数量不能为空!”。

      1. 非功能性需求分析 

    随着用户量的增加,系统可能会需要同时服务上千、上万个页面,服务器需要同时响应大量用户的操作,这就要求系统需要有良好的可扩展性,否则系统会出现延迟,卡顿甚至服务器崩溃的问题。高扩展性可以使软件保持旺盛的生命力,同时也能够使系统更好的适应用户增加、提高性能需求、增加应用功能等改变。

    系统中保存了大量用户和管理员的个人信息,因此,保证系统服务器和数据安全是在开发过程中需要考虑的重要问题。安全性包括服务器安全、操作系统安全、数据库安全、程序代码安全以及用户个人信息和支付安全等,系统可以通过采用防火墙技术、加密技术、认证技术等来增强其安全性,只有一个健壮安全的系统才能具有长久的生命力。

    1. 系统设计
      1. 功能模块设计

    通过软件的需求分析已经获得了系统的基本功能需求。根据各大功能模块的不同,将系统分为各种功能大块。系统功能结构如下图所示。

     

    图4-1系统功能结构图

    注册/登录

    游客(未进行注册或登陆的用户)可以浏览、搜索企业,但不能进行收藏和购买。用户注册首先需要进行表单验证,来验证用户名和手机号码是否合法,然后验证用户名和手机号是否已经存在,验证通过即可注册。

    注册成功后,用户可以通过输入用户名来登录系统,输入密码后进行验证。登录成功后,用户可以使用企业浏览、职位搜索、简历投递、职位邀约等功能。

    个人信息管理

    用户登录系统后,在账户设置中,可以修改昵称、头像、手机号、登陆密码、收货地址等个人基本信息。

    企业搜索

    系统首页展示了企业搜索输入框,用户在输入框内输入与企业名称相关的关键字,系统通过模糊查询搜索到用户需要的企业并展示。

    招聘职位信息展示

    用户在浏览招聘职位时,点击某一个招聘职位,跳转到该招聘职位的信息展示页。在招聘职位信息页面展示了招聘职位的详情信息,比如招聘职位介绍,招聘职位详情,招聘职位状态和收藏等,用户通过浏览信息了解招聘职位的主要内容,最终决定是否投递简历进行职位申请。

    职位应聘

    在职位应聘信息页面,用户可以通过点击“应聘”进行职位应聘,点击后跳转到应聘成功页面。生成页面会展示应聘信息等,用户确认后信息无误点击“提交”生成。

    职位列表

    管理员可以在“职位列表”中展示商城中需要销售的职位,包含职位名称,职位属性以及类目等职位信息。管理员可以对职位进行搜索,按分类查询职位。

    职位添加

    添加职位首先需要输入职位基本信息,如职位名称、职位性质、职位分类等;然后需要编辑职位信息详情,如企业规模,职位描述,职位性质等。管理员也可以删除已添加的职位。

    面试邀请管理

    用户在首页选择面试邀时,可以查看到企业的面试邀请详情等。管理员还可以给面试邀请添加属性值,也可以删除不需要的属性值。同时,企业可以编辑面试邀请信息,如面试邀请时间、地点,需要求职者携带的面试资料信息等,管理员对数据项进行维护管理。

    职位分类管理

    管理员根据职位分类编号、职位详情、职位性质等基本职位分类信息进行分类管理。

    企业资讯管理

    系统首页可以放置企业资讯。管理员可以添加、修改企业资讯的信息,如企业资讯名称,企业资讯图片,企业资讯链接地址等信息。

      1. 数据库设计
        1. 概念模型设计

    概念设计包括实体和联系两部分,如该系统中,用户是一个实体,其属性包括用户 ID 标识、用户名、密码、电话、地址等属性。联系是指实体之间有意义的关联,包括一对一、一对多、多对多三种类型。

    系统E-R图如下所示。

     

    图4-2系统E-R图

    在图中,用户投递简历,关系为1:N,管理员管理简历的关系为1:N,用户和投递简历的关系为1:N。

        1. 数据库逻辑设计

    针对系统的实体和属性,结合数据设计思想,对系统的逻辑设计的内容进行如下描述。

    招聘职位(招聘职位编号、职位名称、职位编号、封面、招聘人数、学历、岗位要求、岗位介绍、职位类别、)。

    职位分类(职位分类编号、职位类别)。

    面试邀请(面试邀请编号、职位名称、职位编号、职位类别、用户名、姓名、面试时间、面试地点、携带资料)。

    职位应聘(职位应聘编号、职位编号、职位名称、职位类别、用户名、姓名、最高学历、毕业院校、专业、联系电话、个人简历、审核状态、审核回复)。

        1. 数据库表设计

    数据库表是设计和实现系统的一个重要基础。以下列出了企业招聘网站几个重要的数据库表。

    registered_user表:

    名称

    类型

    长度

    不是null

    主键

    注释

    registered_user_id

    int

    11

    注册用户ID

    user_name

    varchar

    64

    用户名

    examine_state

    varchar

    16

    审核状态

    recommend

    int

    11

    智能推荐

    user_id

    int

    11

    用户ID

    create_time

    datetime

    0

    创建时间

    update_time

    timestamp

    0

    更新时间

    recruitment_position表:

    名称

    类型

    长度

    不是null

    主键

    注释

    recruitment_position_id

    int

    11

    招聘职位ID

    position_number

    varchar

    64

    职位编号

    job_title

    varchar

    64

    职位名称

    job_category

    varchar

    64

    职位类别

    cover

    varchar

    255

    封面

    number_of_recruits

    int

    11

    招聘人数

    education

    varchar

    64

    学历

    job_requirements

    text

    0

    岗位要求

    job_introduction

    longtext

    0

    岗位介绍

    hits

    int

    11

    点击数

    praise_len

    int

    11

    点赞数

    recommend

    int

    11

    智能推荐

    create_time

    datetime

    0

    创建时间

    update_time

    timestamp

    0

    更新时间

    job_classification表:

    名称

    类型

    长度

    不是null

    主键

    注释

    job_classification_id

    int

    11

    职位分类ID

    job_category

    varchar

    64

    职位类别

    recommend

    int

    11

    智能推荐

    create_time

    datetime

    0

    创建时间

    update_time

    timestamp

    0

    更新时间

    job_application表:

    名称

    类型

    长度

    不是null

    主键

    注释

    job_application_id

    int

    11

    职位应聘ID

    position_number

    varchar

    64

    职位编号

    job_title

    varchar

    64

    职位名称

    job_category

    varchar

    64

    职位类别

    user_name

    int

    11

    用户名

    full_name

    varchar

    64

    姓名

    highest_education

    varchar

    64

    最高学历

    university_one_is_graduated_from

    varchar

    64

    毕业院校

    major

    varchar

    64

    专业

    contact_number

    varchar

    64

    联系电话

    curriculum_vitae

    varchar

    255

    个人简历

    examine_state

    varchar

    16

    审核状态

    examine_reply

    varchar

    255

    审核回复

    recommend

    int

    11

    智能推荐

    create_time

    datetime

    0

    创建时间

    update_time

    timestamp

    0

    更新时间

    interview_invitation表:

    名称

    类型

    长度

    不是null

    主键

    注释

    interview_invitation_id

    int

    11

    面试邀请ID

    position_number

    varchar

    64

    职位编号

    job_title

    varchar

    64

    职位名称

    job_category

    varchar

    64

    职位类别

    user_name

    int

    11

    用户名

    full_name

    varchar

    64

    姓名

    interview_time

    datetime

    0

    面试时间

    interview_location

    varchar

    64

    面试地点

    carry_data

    text

    0

    携带资料

    recommend

    int

    11

    智能推荐

    create_time

    datetime

    0

    创建时间

    update_time

    timestamp

    0

    更新时间

    praise表:

    名称

    类型

    长度

    不是null

    主键

    注释

    praise_id

    int

    10

    点赞ID

    user_id

    int

    11

    点赞人

    create_time

    timestamp

    0

    创建时间

    update_time

    timestamp

    0

    更新时间

    source_table

    varchar

    255

    来源表

    source_field

    varchar

    255

    来源字段

    source_id

    int

    10

    来源ID

    status

    tinyint

    1

    点赞状态

    1. 系统实现
      1. 用户登录的实现

    用户注册完成后,点击“登陆”进入到登陆页面,输入用户名和密码,点击“登陆”按钮,对用户名和密码进行验证,根据传入的用户名和密码在数据库中是否能查询到一条用户信息,若不能返回用户信息则登陆失败,页面提示用户名或密码错误。

    登录界面如下图所示。

     

    图5-1登录界面

    登录关键代码如下。

    public function login()

        {

            if (Request::isPost()) {

                $request = Request::param();

                $result = $this->validate($request, $this->validate);

                if (true !== $result) {

                    // 验证失败 输出错误信息

                    $data['error'] = 30000;

                    $data['message'] = $result;

                } else {

                    $request['password'] = md5($request['password']);

                    $result = $this->model->login($request, $this->table);

                    $data = $result;

                }

            } else {

                $data['error'] = 30000;

                $data['message'] = "field的值不能为空!";

            }

            return json_encode($data);

        }

    public function login($request=[],$table_name = ''){

            $username = $request['username'];

            $password = $request['password'];

            $bol = $this->where(['username'=>$username])->find();

            if ($bol){

                $password = md5($password);

                if ($request['password']==$bol['password']) {

                    //添加token信息

                    $access_token['create_time'] = date('Y-m-d H:i:s');

                    $access_token['update_time'] = date('Y-m-d H:i:s');

    $access_token['info'] = json_encode($bol);

                    // $access_token['info'] = $bol;

                    $access_token['token'] = md5(date('Y-m-d H:i:s'));

                    $bol_token = Db::name('AccessToken')->insert($access_token);

                    if ($bol_token){

                        $data['obj'] = $bol;

                        $data['obj']['token'] = $access_token['token'];

                        return ['result' => $data];

                    }else{

                        return ['error' => ['code' => 5000, 'message' => '登录失败,token生成失败']];

                    }

                } else {

                    return ['error' => ['code' => 5000, 'message' => '登录失败,密码不正确']];

                }

            }else{

                return ['error' => ['code' => 5000, 'message' => '登录失败,账号不存在']];

            }

        }

      1. 系统前台主要功能实现 
        1. 首页的实现

    用户界面要尽量简洁大方,使用户能够方便找到需要的功能入口,浏览、购买商品,且要易于修改和维护,同时还要保证用户合法和系统安全。

    首页界面如下图所示。

     

    图5-2首页界面

        1. 用户注册的实现

    用户进入系统首页后,点击“注册”链接进入到注册页面,按照页面提示输入用户名、密码和手机号,页面进行表单验证,验证输入的用户名和手机号是否合法,表单验证通过后,点击“立即注册”按钮,利用 Ajax 技术,对用户名和手机号实现页面无刷新验证,检测数据库中是否已经存在该用户名或手机号,若数据库中不存在,则注册成功,注册成功后,自动跳转到登录页面。

    用户注册界面如下所示。

     

    图5-3用户注册界面

    用户注册关键代码如下所示。

    public function register()

        {

            if (Request::isPost()) {

                $request = Request::param();

                $request['create_time'] = isset($request['create_time']) ? $request['create_time'] : date('Y-m-d H:i:s');

                $request['update_time'] = isset($request['update_time']) ? $request['update_time'] : date('Y-m-d H:i:s');

                $result = $this->validate($request, $this->validate);

                if (true !== $result) {

                    // 验证失败 输出错误信息

                    $data['error'] = 30000;

                    $data['message'] = $result;

                } else {

                    $request['password'] = md5($request['password']);

                    $result = $this->model->register($request, $this->table);

                    $data = $result;

                }

            } else {

                $data['error'] = 30000;

                $data['message'] = "field的值不能为空!";

            }

            return json_encode($data);

        }

    public function register($request=[],$table_name = ''){

            $username = $request['username'];

            $bol = $this->where(['username'=>$username])->find();

            if (!$bol){

                $result = self::allowField(true)->save($request);

                if ($result) {

                    return ['result' => 1];

                } else {

                    return ['error' => ['code' => 3000, 'message' => '注册失败']];

                }

            }else{

                return ['error' => ['code' => 3000, 'message' => '注册失败,账号已存在']];

            }

        }

        1. 企业新闻的实现

    企业新闻页是展示系统企业新闻的页面,通过sql语句:"select shangpinxinximingcheng,id,tupian,jiage,addtime from shangpinxinxi order by addtime desc",将所有是企业按企业编号降序排列。

    企业新闻页面,如下图所示。

     

    图5-4企业新闻页面

        1. 招聘职位列表的实现

    系统首页提供了搜索招聘职位的输入框,用户在输入框内输入想要查找招聘职位的关键字,点击搜索按钮,系统将用户输入的关键字传递到后台。首先创建一个实体类 PageBean,该实体类的属性包括页码 pageCode、每页记录数 pageSize、总记录数 totalRecord 和一个 List 集合 beanList,利用输入的关键字对数据库进行模糊查询,将得到的结果存入 PageBean 中,返回PageBean 跳转到 goodList.php 页面,在 goodList.php 页面,使用循环将搜索到的结果分页展示。

    招聘职位列表界面如下图所示。

     

    图5-5招聘职位列表界面

      1. 系统后台主要功能实现 
        1. 用户管理的实现

    管理员对系统用户的管理,在yhzhgl.php实现管理员用户的管理,包括录入、删除、修改,修改密码通过SESSION获取用户名,然后输入新密码,提交到mod.php中,使用sql命令更新密码。

        1. 招聘职位管理的实现

    管理员在后台管理界面点击到所有招聘职位界面dingdan_list.php,向控制层dingdanAction发送请求,搜索当前所有招聘职位信息,dingdanAction向招聘职位数据访问层调用搜索全部招聘职位的请求,向数据库的招聘职位搜索当前所有招聘职位并将招聘职位信息以对象的形式层层返回到dingdan_list.php界面,显示出当前所有招聘职位信息。同时可以删除过期招聘职位,确认已有招聘职位,进行发布。

    招聘职位管理界面如下图所示。

     

    图5-6招聘职位管理界面

    招聘职位管理关键代码如下所示。

    public function avg()

        {

            $request = Request::param();

            if (isset($request['field'])) {

                if (!empty($request['field'])) {

                    $result = $this->model->avg_field($request, $this->table, $this->table_id);

                    $data = $result;

                } else {

                    $data['error']['code'] = 30000;

                    $data['error']['message'] = "field的值不能为空!";

                }

            } else {

                $data['error']['code'] = 30000;

                $data['error']['message'] = "field的值不能为空!";

            }

            return json_encode($data);

        }

        1. 职位应聘管理的实现

    管理员在后台管理界面点击到所有职位应聘界面dingdan_list.php,向控制层dingdanAction发送请求,搜索当前所有职位应聘信息,dingdanAction向职位应聘数据访问层调用搜索全部职位应聘的请求,向数据库的职位应聘搜索当前所有职位应聘并将职位应聘信息以对象的形式层层返回到dingdan_list.php界面,显示出当前所有职位应聘信息,包括,求职者姓名、学历信息、个人信息等。

    职位应聘管理界面如下图所示。

     

    图5-7职位应聘管理界面

        1. 面试邀约管理的实现

    管理员可以获取系统中所有面试邀约的列表并对其进行编辑。管理员在添加面试邀约时,需要输入面试邀约基本信息,如面试时间、面试地点、需要携带资料等,还需要输入面试邀约详情描述,包括对面试邀约功能的描述。添加面试邀约完成,数据库面试邀约表添加一条信息。面试邀约由企业回复求职者,管理员对面试邀约数据项进行管理。

    面试邀约管理界面如下图所示。

     

    图5-8面试邀约管理界面

    面试邀约管理关键代码如下所示。

    public function avg_group()

        {

            $request = Request::param();

            if (isset($request['groupby']) && isset($request['field'])) {

                if (!empty($request['groupby']) && !empty($request['field'])) {

                    $result = $this->model->avg_group($request, $this->table, $this->table_id);

                    $data = $result;

                } else {

                    $data['error']['code'] = 30000;

                    $data['error']['message'] = "groupby或者field的值不能为空!";

                }

            } else {

                $data['error']['code'] = 30000;

                $data['error']['message'] = "groupby或者field的值不能为空!";

            }

            return json_encode($data);

        }

    系统测试

    1. 系统可靠性测试

    以进入系统首页的访问速度为例展示系统的性能测试;系统的主要用户群体是购物理念较为先进的消费者,系统要在3秒钟内响应;需要完成页面的菜单栏、首页轮播图片、类目及商品列表、商品评价以及各功能模块入口等元素的显示。

      1. 系统功能性测试

    功能性测试是指执行指定的工作流程,通过对一个系统的所有特性和功能都进行测试确保符合需求和规范。

    系统功能性测试表如下表所示。

    表6-1系统功能性测试表

    编号

    测试功能

    测试内容

    测试结果

    1

    用户登录

    1.验证用户名与密码的正确性。

    2.验证密码是否可见。

    通过

    2

    首页展示

    1.首页数据是否成功加载。

    2.验证搜索功能的准确性。

    3.验证是否可以异步加载。

    4.验证导航栏按钮。

    通过

    3

    个人信息修改

    1.验证登录名是否可以正常更改。

    2.验证联系方式是否可以更改。

    3.验证收货地址可以正常修改。

    4.验证密码是否可以修改。

    通过

    7

    职位类目管理

    1.验证类目新增是否可以成功。

    2.验证类目删除是否可以成功。

    通过

    8

    招聘职位管理

    1.职位信息是否与上传一致。

    2.是否能完成信息修改。

    3.验证招聘发布信息修改。

    通过

    9

    职位应聘

    1.能否正常进行职位上传以及应聘。

    2.验证数据准确性。

    通过

    10

    面试邀约

    1.面试邀约是否添加验证。

    2.邀约是否回复上传。

    3.验证表单是否提交成功。

    通过

    11

    用户管理

    1.验证用户录入功能。

    2.验证用户违规清理功能。

    通过

      1. 系统合格性测试

    集成测试后,所有的模块已经全部连接完毕,形成了一个完整的系统。合格性测试是在集成测试完毕后,进一步对系统进行综合性的检测。经过合格性测试,可以检查出系统是否符合系统的设计,能够完成需求的所有功能。本系统经过最后的测试,所有模块功能都能按预定要求工作。

      1. 测试结果

    在实际测试中,经过一系列系统性的测试,使我们能够及时发现一些系统在设计中出现的疏忽和漏洞。经过严密的测试,不仅发现了模块内部的错误,也查找到模块连接后产生的错误。经过测试,对系统产生错误的地方进行优化、修改和完善,使得系统能够实现最初设计的基本功能。

    1. 总结与展望

    此时项目已经完成,即使实施的时间不是很长,但是这个过程中需要准备很长的一段时间去对系统设计开发所实际到的技术进行学习。在学习的过程中,我逐渐认识得到了我自身存在的一些不足。对于一些控制是必要的应用技能,能够理解,整个过程中仅仅是一个掌握了常用的性能和控制方法,我觉得挺容易的。从该系统中,系统的分析和设计的调查数据,并且已经经历了几个月,并努力几个月,该系统已经完成。很显然,该系统仍有很多不成熟,在系统设计过程中有许多技术缺陷存在。在设计的过程中也涉及到了很多自己无法解决的问题,主要通过找专业的网站和论坛来解决这些问题,对于圆满完成我的毕业设计,他们也贡献了很大一部分力量。系统的开发环境和配置都是可以自行安装的,系统使用PHP开发工具,使用比较成熟的Mysql数据库进行对系统前台及后台的数据交互,根据技术语言对数据库,结合需求进行修改维护,可以使得系统运行更具有稳定性和安全性,从而完成实现系统的开发。

    系统投入运行时,各功能均运行正常。系统的每个界面的操作符合常规逻辑,对使用者来说操作简单,界面友好。整个系统的各个功能设计合理,体现了人性化。

    化妆品销售管理系统的主要特点有:

    (1)简单大方,易于操作的 Web 页面;

    (2)利用 Ajax 技术使页面进行无刷新更新;

    (3)根据用户的浏览和搜索记录,向用户推荐可能感兴趣的职位信息;

    (4)系统具有企业搜索功能,使用户能够简单方便的找到自己想要了解的企业信息;

    (5)简历投递功能可以帮助用户对感兴趣的职位进行申请,上传简历,简历投递;(6)有良好的安全性和可扩展性,增强了系统的可靠性,使系统保持持久的生命力。

    由于时间限制和本人能力条件有限,该系统还存在一些不足,今后也会出现许多新的开发技术,未来还可以对系统做出如下改进:

    (1)优化系统页面,使页面更加美观且方便操作;

    (2)优化职位搜索功能,提供多条件选择查询搜索;

    (3)优化资讯推荐功能,提高资讯推荐的精准度;

    (5)进一步提高系统的安全性,使系统更加健壮;

    (6)优化数据和代码,提升软件效率,方便系统维护和扩展。

    参考文献

    [1]张磊. 基于PHP语言的路由方法、装置、服务器、终端及可读介质[P]. 湖北省:CN109600311B,2022-01-04.

    [2]路尧,梁艳.基于PHP和MySQL的破坏性地震震例数据库设计与实现[J].山西地震,2021(04):43-46+50.

    [3]张涵宇.“互联网+”在企业招聘中的应用思考[J].中国市场,2021(36):178-179.

    [4]田娟.PHP教学中项目驱动法对计算思维能力培养[J].办公自动化,2021,26(23):17-19.

    [5]徐艺澜,沈艳,范恩,余冬华.基于PHP和MySQL的绿色垃圾回收系统设计[J].电脑知识与技术,2021,17(31):32-35.

    [6]孔海娥,魏钦江,陈璟,田昭媛.高职院校PHP课程案例研究[J].中国新通信,2021,23(18):164-165.

    [7]陈仕许.MySQL数据库在PHP网页中的动态应用研究[J].信息记录材料,2021,22(09):112-113.

    [8]陈琰.企业人才招聘的方法与途径——以交通建设监理企业为例[J].人才资源开发,2021(14):79-81.

    [9]扶明亮,李刚.基于招聘网站大数据分析的求职者需求与企业需求匹配研究[J].统计与管理,2021,36(08):91-97.

    [10]QingHai Yin. Research and Implementation of Network Examination System Based on PHP Language[J]. Journal of Physics: Conference Series,2018,1087(6):

    [11]吕晓昆. 企业互联网招聘有效性的影响因素实证研究[D].青岛大学,2018.

    [12]Rotmianto Mohamad,Wahyudi Eko. Developing Plugin e-DDC as an Additional Application for Senayan Library Management System with PHP Language Programming and MySQL Database[J]. Record and Library Journal,2018,2(1):

    [13]唐星,王军峰,王文军,陶欢. 原型设计工具与PHP内容框架进行展示型网页敏捷开发的方法研究[C]//工业设计研究(第五辑).,2018:135-138.

    [14]谢梦蝶. 企业网站招聘网页设计对求职者求职意向的影响:用户感知的中介效应[D].华东理工大学,2018.

    [15]任华,洪学银,孙芳芳,孙斌,张松娟. PHP+Mysql+Dreamweaver网站开发与实践[M].人民邮电出版社:, 201808.386.

    [16]本报记者 郭玉志. 国内网络招聘企业并购步伐加快[N]. 中国企业报,2018-10-13(003).

    致谢

    时光飞逝,转眼间我在学校的这些年生活即将结束,回顾这几年的学习生活,收获良多,既有幸福也有难过,学校生活的结束对于我来说也是一个新的开始。论文即将完成,在此,我心中有许多想要感谢的人。首先感谢我的导师,不仅在学习研究方面加以指导,也在生活和为人处世上给予帮助。还要感谢授课老师,你们严谨的学术精神和积极向上的工作态度都在激励我的成长和进步。感谢多年来一直生活在一起的室友,谢谢你们多年来的陪伴和照顾。最后,要感谢各位论文评审老师,感谢您们在百忙之中抽空评阅本论文并给出宝贵的意见和建议。

    免费领取本源代码,请关注点赞+私聊

  • 相关阅读:
    如何快速高效的掌握一门新技术
    五、原型模式
    API响应状态
    应用安全四十一:密码安全大全
    asp.net高铁站购票管理信息系统VS开发sqlserver数据库web结构c#编程计算机网页项目
    TSINGSEE青犀视频AI算法助力构建城市市容·街面秩序管理解决方案
    【Leetcode】179. 最大数
    2023.09.09青少年软件编程(Python)等级考试试卷(四级)
    秋招面经第七弹:网易一面-数据开发工程师
    C 风格的枚举还存在 “成员名称全局有效” 和 “可以隐式转换为整型” 的缺陷
  • 原文地址:https://blog.csdn.net/ID3461074420/article/details/126876267