人才招聘系统

文章目录

      • 一、 需求分析
      • 二、 概念结构设计
      • 三、 逻辑结构设计
      • 四、 物理结构设计
      • 五、 数据库实施
      • 六、 数据库运行和维护
      • 七、 源代码和报告下载

开发环境:win10+Xmapp+PHPstorm

一、 需求分析

  1. 基本的数据信息
    1. 企业信息
      企业编号,企业名称,用户名,密码,企业地址,邮箱
    2. 用户信息
      个人用户编号,用户名,密码,姓名,邮箱
    3. 新闻信息
      新闻编号,新闻标题,新闻内容,新闻图片,新闻来源,发布时间,点击次数
    4. 招聘信息
      招聘信息编号,企业编号,企业名称,企业类型,邮箱,电话,地址,邮政编码,工作职位,招聘人数,工作城市,工作描述,发布时间,点击次数
    5. 个人简历信息
      求职信息编号,个人用户编号,用户名, 性别,邮箱,电话,地址,邮政编码,教育程度,特长,工作类型,工作职位,工作城市,期望工资,自我介绍,发布时间,点击次数
    6. 在线申请表
      提交简历编号,个人用户编号,企业编号,姓名,企业名称,招聘职位,应聘职位
  2. 需要实现的功能
    1. 企业信息管理
      企业信息维护,企业新闻发布,招聘信息发布,应聘人员信息查询,求职人员管理
    2. 个人用户管理
      用户注册,简历更新,求职信息发布,求职意向管理,浏览新闻,招聘信息查询,在线提交简历申请表
    3. 系统管理
      新闻发布,新闻管理,个人用户管理,企业用户管理,系统维护

二、 概念结构设计

人才招聘系统_第1张图片

三、 逻辑结构设计

企业信息(企业编号,企业名称,用户名,密码,企业地址,邮箱)
人才招聘系统_第2张图片
用户信息(个人用户编号,用户名,密码,姓名,邮箱)
人才招聘系统_第3张图片
新闻信息(新闻编号,新闻标题,新闻内容,新闻图片,新闻来源,发布时间,点击次数)
人才招聘系统_第4张图片
招聘信息(招聘信息编号,企业用户编号,企业名称,企业类型,邮箱,电话,地址,邮政编码,工作职位,招聘人数,工作城市,工作描述,发布时间,点击次数)

个人简历信息(求职信息编号,个人用户编号,用户名,姓名,邮箱,电话,地址,邮政编码,教育程度,特长,工作类型,工作职位,工作城市,期望工资,自我介绍,发布时间,点击次数)
人才招聘系统_第5张图片
在线申请表(提交简历编号,个人用户编号,企业编号,姓名,企业名称,招聘单位,应聘职位)
人才招聘系统_第6张图片

四、 物理结构设计

用PHP和Xampp建立自己的服务器端,并且实现建立自己的数据库和基本表
结果如下图所示:
人才招聘系统_第7张图片

现在主流的DBMS一般都采用的是索引法和HASH法。其中最常用的是索引法,所以我在经常需要搜索的列和主关键字上建立了唯一的索引。
在这里插入图片描述
在这里插入图片描述
并且添加外键:
人才招聘系统_第8张图片
在这里插入图片描述
在这里插入图片描述

五、 数据库实施

主要源码如下:

发布职位.php:



    
    
    
    企业登录
    
    
    
    
    


    


人才招聘系统_第9张图片

Personal_register.php:


    注册
    
    
    
    
    



姓名:         
账户名:      
密码:         
重复密码:   
个人地址:   
邮箱:         
手机号:      
图片验证码:

手机验证码:

    

人才招聘系统_第10张图片
Enterprise_management.php:



    
    
    
    企业管理
    
    
    



企业资料
connect_error) { die("连接失败:" . $conn->connect_error . '\n'); } else { // echo "连接成功.\n"; } mysqli_set_charset($conn, 'utf8'); session_start(); $username = $_SESSION['username']; $sql = "select * from enterprise_info where e_username='$username'"; $result = $conn->query($sql); if ($result) { // echo "找到了该用户"; } else { // echo "没有找到该用户".$sql."
".$conn->error; // exit("系统出错"); } $row = mysqli_fetch_row($result); $_SESSION['name'] = $row[1]; ?> 企业名称: "; ?>
用户名: "; ?>
密码: "; ?>
企业地址: "; ?>
邮箱: "; ?>
标题: "; ?> 内容: "; ?>
图片: "; ?> 来源: "; ?>
企业名称: "; ?> 企业类型: "; ?> 邮箱: "; ?>
电话: "; ?> 地址: "; ?> 邮政编码: "; ?>
工作职位: "; ?> 招聘人数: "; ?> 工作城市: "; ?>
工作描述: "; ?>
query($sql); if ($result) { if ($result->num_rows> 0) { $j = $result->num_rows; while ($j > 0) { $row=$result->fetch_row(); $u_id = $row[0]; $sql="SELECT p_u_username,p_u_phone FROM personal_resume WHERE p_u_id='$u_id'"; $res=$conn->query($sql); if($res){ $row=$res->fetch_row(); $u_username=$row[0]; $_SESSION['r_name['.$j.']']=$u_username; $u_phone=$row[1]; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; }else{ echo "系统错误"; } $j--; } }else{ echo ""; } }else{ echo "failed".$sql."
".$conn->error; } ?>
$u_username$u_phone
新闻发布
招聘信息发布
应聘人员信息查询
求职人员管理
close(); ?>

人才招聘系统_第11张图片
Personal_management.php:

 
    
        
        
        
        个人管理
        
        
        
    
    
        
        
个人资料
connect_error) { die("连接失败:" . $conn->connect_error . '\n'); } else { // echo "连接成功.\n"; } mysqli_set_charset($conn,'utf8'); session_start(); $username=$_SESSION['username']; $sql="select * from user_info where u_username='$username'"; $result=$conn->query($sql); if($result){ // echo "找到了该用户"; }else{ // echo "没有找到该用户".$sql."
".$conn->error; // exit("系统出错"); } $row=mysqli_fetch_row($result); ?> 姓名: "; ?>
用户名: "; ?>
密码: "; ?>
邮箱: "; ?>
query($sql); if($result->num_rows>0){ echo ""; }else{ echo ""; } $row=mysqli_fetch_row($result); ?> 用户名: "; ?> 性别: "; ?> 邮箱: "; ?>
电话: "; ?> 地址: "; ?> 邮政编码: "; ?>
教育程度: "; ?> 特长: "; ?> 工作类型: "; ?>
工作职位: "; ?> 工作城市: "; ?> 期望工资: "; ?>
自我介绍: $row[14]"; ?> 发布时间: "; ?> 点击次数: "; ?>
姓名: "; ?>
企业名称: "; ?>
招聘职位: "; ?>
应聘职位: "; ?>
求职管理
浏览新闻
招聘信息查询
提交简历申请表
close(); ?>

六、 数据库运行和维护

数据库运行一段时间后,由于记录不断增删改,将会使数据库的物理存储情况变坏,降低数据的存取效率,使数据库性能下降,这时数据库管理员就要对数据库进行重组织或部分重组织(只对频繁增、删的表进行重组织)。关系数据库管理系统一般都提供数据重组织的实用程序,在重组织过程中,按原设计要求重新安排存储位置、回收垃圾、减少指针链等,提高系统性能。
数据库的重组织并不修改原设计的逻辑和物理结构,而数据库的重构造是指部分修改数据库的模式和内模式。

由于数据库应用环境发生变化,增加了新的应用或新的实体,取消了某些应用,有的实体与实体间的联系也发生了变化等,使原有的数据库设计不能满足新的需求,需要调整数据库的模式和内模式。
数据库的重构也是有限的,只能做部分修改。如果应用变化太大,重构也无济于事,说明此数据库应用系统的生命周期已经结束,应该设计新的数据库应用系统了。

七、 源代码和报告下载

完整代码和报告已经上传到Github上:完整代码-talent_recruitment

你可能感兴趣的:(前端,数据库,PHP)