【毕业设计之PHP系列】PHP课程网站络管理系统(二)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 【毕业设计之PHP系列】PHP课程网站络管理系统

第三章 开发过程

§3.1 设置服务器


这里主要是介绍Linux服务器中最重要的网络服务:

Web服务器的配置:

安装好Apache 服务器后,还需要根据实际情况完成各项参数的配置,其设置文件位于/www/httpd/conf/目录下,通常使用3个配置文件httpd.conf, access.conf 和srm.conf来配置Apache.

httpd.conf提供了最基本的服务器配置,是对守护进程httpd如何运行的技术描速;srm.conf是服务器的资源映射文件,告诉服务器各种文件的MIME类型,以及如何支持这些文件;access.conf用于配置服务器的访问权限,控制不同用户和计算机的访问权限。

用命令:#/www/bin/apachectl restart启动来设置各项参数。

       a. ServerType standalone       //可使httpd进行自我处        理,占用较少CPU资源

       b. ServerRoot “/usr/local”   //指定守护进程的运行目录

其他参数可根据实际需要设置。


§3.2 设置数据库


  §3.2.1创建数据库和数据表


  管理子系统所用的数据库名为:gov_dbbase;

  管理子系统所用的数据表有5项,名分别为:users(用户简要信息表),aducat(学历信息表),emergen(意外事故情况表),family(家属信息表),resume(个人简历表)。

用命令:# cd /var/www/html 回车,进入mysql所在目录;

       # mysql –p 回车,根据提示键入密码;

用命令:create database gov_dbbase;//完成创建数据库。

用命令:show databases;            //显示数据库。

用命令:use gov_dbbase;            //指定使用的数据库。      


以下将完成各表项的创建:

创建users(用户简要信息)表:

CREATE TABLE users(                     //建立公务员个人信息表
//字段名称 字段类型(宽度)        空否          字段注释
ID       int(5)                 NOT NULL,    //公务员号
NAME     varchar(10)            NOT NULL,    //姓名
XB       varchar(6)             NULL,        //性别
MZ       varchar(10)            NULL,        //民族
BM       varchar(10)            NULL,        //部门
ZC       varchar(10)            NULL,        //职称
ZW       varchar(10)            NULL,        //职务
CSNY     date                   NULL,        //出生年月
XZDZ     varchar(40)            NULL,        //现住地址
MM       int(10)                NOT NULL     //密码
BMBM     int(5)                 NOT NULL,    //部门编码
ZWBM     int(5)                 NOT NULL,    //职务编码
MJ       int(5)                 NOT NULL     //秘级
 );

创建resume(个人简历)表:

CREATE TABLE resume(                         //个人简历
//字段名称 字段类型(宽度)        空否          字段注释
JG       varchar(20)            NULL,        //籍贯
SG       int(3)                 NULL,        //身高
TZ       int(3)                 NULL,        //体重
XUX      varchar(2)             NULL,        //血型
STZK     varchar(4)             NULL,        //身体状况
HJ       varchar(20)            NULL,        //户籍
SFZH     int(19)                NULL,        //身份证号
HOBBY    varchar(50)            NULL,        //个人爱好
YB       int(10)                NULL,        //邮编
EML      varchar(20)            NULL,        //邮件地址
HYZK     varchar(4)             NULL,        //婚姻状况
ZZMM     varchar(10)            NULL,        //政治面貌
XZ       varchar(8)             NULL         //星座
);

创建family(家属信息)表:

CREATE TABLE family(                         //家属情况
//字段名称 字段类型(宽度)        空否          字段注释
JSCH1    varchar(10)            NULL,        //家属称呼1
JSCH2    varchar(10)            NULL,        //家属称呼2
JSCH3    varchar(10)            NULL,        //家属称呼3
JSXM1    varchar(10)            NULL,        //家属姓名1
JSXM2    varchar(10)            NULL,        //家属姓名2
JSXM3    varchar(10)            NULL,        //家属姓名3
JSXB1    varchar(10)            NULL,        //家属性别1
JSXB2    varchar(10)            NULL,        //家属性别2
JSXB3    varchar(10)            NULL,        //家属性别3
JSCSRQ1  varchar(10)            NULL,        //家属出生日期1
JSCSRQ2  varchar(10)            NULL,        //家属出生日期2
JSCSRQ3  varchar(10)            NULL,        //家属出生日期3 JSZY1    varchar(10)            NULL,        //家属职业1
JSZY2    varchar(10)            NULL,        //家属职业2
JSZY3    varchar(10)            NULL,        //家属职业3
JSGZDW1  varchar(40)            NULL,        //家属工作单位1
JSGZDW2  varchar(40)            NULL,        //家属工作单位2
JSGZDW3  varchar(40)            NULL,        //家属工作单位3
JSZZ1    varchar(40)            NULL,        //家属住址1
JSZZ2    varchar(40)            NULL,        //家属住址2
JSZZ3    varchar(40)            NULL         //家属住址3
);

创建emergen(意外事故情况)表:

CREATE TABLE emergen(                        //意外情况
//字段名称 字段类型(宽度)        空否          字段注释
YWLLR    varchar(10)       NULL,        //发生意外联络人
YWGX     varchar(10)       NULL,        //发生意外联络人关系
YWTX     varchar(40)       NULL,        //发生意外联络人通讯
YWDH     varchar(20)       NULL,        //发生意外联络人电话YWSYR    varchar(10)       NULL,        //发生意外受益人YWSYGX   varchar(10)       NULL,        //发生意外受益人关系YWSYTX   varchar(40)       NULL,        //发生意外受益人通讯YWSYDH   varchar(20)       NULL         //发生意外受益人电话
);

创建aducat(学历信息)表:

CREATE TABLE aducat(                         //教育情况
//字段名称 字段类型(宽度)      空否          字段注释
XL       varchar(10)            NULL,        //最高学历
SCHOOL   varchar(30)            NULL,        //毕业学校
GRADATE  date                   NULL,        //毕业时间
MAJOR    varchar(20)            NULL,        //专业
SPECI    varchar(40)            NULL,        //特长
LANGU    varchar(20)            NULL         //外语能力
);
用命令:show tables;                //显示所有已建表项。
用命令:describe users;             //显示users表各个字段。
其他表项类似操作。


§3.2.2  数据库连接

  为了保证程序的安全,编写独立的数据库连接功能程序:

<?php
do{include("../config.php");} while($sql=="");
//数据库所在的主机地址,localhost是本机地址
  $MYSQL_HOSTNAME = "localhost";
//数据库登录的用户名称
  $MYSQL_USERNAME = "root";
//数据库登录的密码
 // $MYSQL_PASSWORD = "";
//要登录的数据库的名称
 // $DATABASE = "gov_dbbase";
//数据库的连接操作
 $link_id=$sql;
?>


§3.2.3 创建数据源                                               用命令:# insert into users

         values(1003,’张三’,’男’,’汉’,’部’,’部长’,’工程师’,’1978-03-24’,’成都市人民南路3段3号’,

12345,6,4,3);其他表数据源类似插入。

用命令:# select * from users order by ID;可以查看所录入的数据源。

注:考勤管理和职员工资信息管理两部分的功能实现,由薪资管理模块和公共信息管理模块提供。


§3.3 系统功能实现

管理子系统作为课程的一个模块,将完成对政府系统中公务员的管理,目前包括规章制度、重要通知、最新信息、信息查询、管理员登录以及相关功能链接。其中以信息查询和管理员登录为主,将实现个人信息的简要和详细查询,部门中人员信息的简要和详细查询;人员信息的录入、修改、删除、工资管理以及考勤管理。采用页面交互式操作,用网页制作工具dreamwaver或其它工具实现,功能程序用php实现,将所有的程序放置在服务器上,通过apache提供;达到网上办公和无纸办公。可以参考以下功能模块图。

 系统功能模块图

   该功能模块图提供管理子系统中各模块之间的关系说明。功能模块图如下:



a678affc5c3c4ab5928217300a705335.png


§3.3.1  系统登录

用户登录课程后,点击“管理”链接进入本子系统。


39420f01266c445bb4363a519f1ad126.png


如下图示,进入管理子系统主页面:



b50836e56b294d0a8c79ab3d4d6b88cd.png


§3.3.2  规章制度

管理规章制度栏,将向所有公务员提供各种咨询信息,为初到机关的员工讲解具体要求。通过点击即可链接到所要查看项目,可以进入该项的详细内容页面。其具体内容由用户方提供,粘贴到页面即可。如上图左示。


§3.3.3  重要通知

  重要通知栏,将由部或科发布其最近最新的通知,由管理员在新闻发布管理项,可以添加,修改,删除新闻。如上图中上示。


§3.3.4  最新信息

  最新信息栏,将由部或科发布其最近最新的信息,包括与本单位一切相关信息,仍由管理员在新闻发布管理项,可以添加,修改,删除新闻;通过点击相关项,可浏览其详细信息。如上图中下示。



§3.3.5  信息查询


17558beffe0e4613a6c0221e289ebad2.png


程序实现:

//选择进入模块login1.php
      <? php              
 switch($choose):
  case "c1":
    require("infomation1.php");   break;
  case "c2":
    require("infomation2.php");   break;
  case "c3":
    require("depart1.php");   break;  
  case "c4":
    require("depart2.php");   break;
  default:
    require("m6_index.php");
endswitch;
?>


(a)、职员信息查询:将向员工用户提供公务员信息查询,即:员工简要信息查询和其详细信息查询。简要信息查询时,当输入员工的帐号和姓名,点击“确定”后,由程序search1.php提交到数据库中,根据ID和NAME从表users中提取数据返回infomation1.php显示;详细信息查询时,输入员工的帐号、姓名和密码,点击“确定”后由程序modify11.php提交到数据库中,根据ID、NAME和PASSW从表users以及aducat、emergen、family、resume中提取数据返回infomation2.php显示。

197f0e927c3e40c18422370ff27018c7.png


                   上图提供个人信息简要查询

程序实现:

//个人简要信息search1.php
<?
 if($ID AND $NAME){ //判断输入信息,若正确则连接数据库
             do{ require("../config.php"); }while($sql==" ");              $str="SELECT NAME,XB,MZ,BM,ZC,ZW,ID,CSNY,XZDZ                         FROM users WHERE ID='$ID';";
$result=mysql_query($str,$sql);
mysql_close();//关闭数据库
$record=mysql_fetch_row($result);}?>//送出查询结果



66b64ddc23824a0dad3953ccd14c16ee.png


                       上图提供个人信息详细查询

程序实现:

//个人信息详细查询mofify11.php
 <?php        
 if($ID AND $NAME){ //判断输入信息,若正确则连接数据库
  do{require("../config.php");}while($sql=="");
       $str="SELECT * FROM  users WHERE ID='$ID';";                    $result=mysql_query($str,$sql);            $record1=mysql_fetch_array($result);
       $str2="SELECT * FROM  aducat WHERE ID='$ID';";            $result2=mysql_query($str2,$sql);            $record2=mysql_fetch_array($result2);
       $str3="SELECT * FROM  resume WHERE ID='$ID';";            $result3=mysql_query($str3,$sql);            $record3=mysql_fetch_array($result3);
       $str4="SELECT * FROM  family WHERE ID='$ID';";            $result4=mysql_query($str4,$sql);            $record4=mysql_fetch_array($result4);
       $str5="SELECT * FROM  emergen WHERE ID='$ID';";            $result5=mysql_query($str5,$sql);            $record5=mysql_fetch_array($result5);
       mysql_close();  }
  ?>

66b64ddc23824a0dad3953ccd14c16ee.png

(b)、部门信息查询:部门简要信息查询和其详细信息查询。即:查询该部门员工的信息。部门简要信息查询时,只需输入部门名称,点击“确定”后,程序search2.php根据BM(部门名)提交到数据库中从表users,中查询到该部门所有员工的简要信息返回depart1.php显示。详细信息查询时,需输入你的姓名,帐号,密码,且必须是领导,职务编码为4。然后输入被查询者的姓名和帐号,点击“确定”,由程序depart12.php提交数据库从表users,aducat,emergen,resume,family中查询,返回到depart2.php显示。                                   上图提供部门信息简要查询

程序实现:

//部门信息简要查询search2.php
<?//判断输入信息,若正确则连接数据库
 do{require("../config.php");}while($sql==" ");
 if($BM){
$select="select * from users where BM='$BM';"; $result=mysql_query($select,$sql);
//$record=mysql_fetch_row($result);
$sn_index=mysql_num_rows($result); for($index=0;$index<$sn_index;$index++){
    $arr[$index]=mysql_fetch_array($result); };
mysql_close();}
?>


用list_display.php程序来实现逐条显示

<?//逐条显示
<TR align=center><TD ALIGN=CENTER><?echo $arr[$index][ID]?></TD>
<TD ALIGN=CENTER><?echo $arr[$index][NAME]?></TD>
<TD ALIGN=CENTER><?echo $arr[$index][XB]?></TD>
<TD ALIGN=CENTER><?echo $arr[$index][MZ]?></TD>
<TD ALIGN=CENTER><?echo $arr[$index][BM]?></TD>
<TD ALIGN=CENTER><?echo $arr[$index][ZC]?></TD>
<TD ALIGN=CENTER><?echo $arr[$index][ZW]?></TD>
<TD ALIGN=CENTER><?echo $arr[$index][CSNY]?></TD>
<TD ALIGN=CENTER><?echo $arr[$index][XZDZ]?></TD>
</TR>?>


5eb22a89506a439c995ecdb0b5228c61.png


                      上图提供部门信息详细查询


程序实现:

//部门详细信息查询depart12.php
<?//判断输入信息,若正确则连接数据库
if($ID AND $NAME AND $PASSW AND $OBJECTN AND $OBJECTID){
     do{ require("../config.php");}while($sql=="");
     $str=" SELECT ZWBM FROM users WHERE ID='$ID';";     $result=mysql_query($str,$sql);     $record=mysql_fetch_array($result);
 if($record[0]==4){  
   if($OBJECTID AND $OBJECTN){ //判断输入信息,若正确则连接数据库
                    do{require("../config.php");}while($sql=="");       $str="SELECT * FROM  users WHERE ID='$OBJECTID';";            $result=mysql_query($str,$sql);            $record1=mysql_fetch_array($result);
$str2="SELECT * FROM  aducat WHERE ID='$OBJECTID';";            $result2=mysql_query($str2,$sql);            $record2=mysql_fetch_array($result2);
$str3="SELECT * FROM  resume WHERE ID='$OBJECTID';";            $result3=mysql_query($str3,$sql);            $record3=mysql_fetch_array($result3);
$str4="SELECT * FROM  family WHERE ID='$OBJECTID';";            $result4=mysql_query($str4,$sql);            $record4=mysql_fetch_array($result4);
$str5="SELECT * FROM  emergen WHERE ID='$OBJECTID';";            $result5=mysql_query($str5,$sql);            $record5=mysql_fetch_array($result5);
mysql_close(); }   }  }
      ?>


相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
7天前
|
Linux PHP 数据安全/隐私保护
2024授权加密系统PHP网站源码
2024授权加密系统PHP网站源码
87 58
|
12天前
|
前端开发 PHP 数据安全/隐私保护
知识付费系统源码 PHP
在数字经济背景下,知识付费成为新兴领域,尤其在线教育平台的兴起,使更多教育者通过知识付费系统销售课程,实现数字化转型与收入提升。开发此类平台需考虑众多技术细节和业务需求,如使用PHP语言实现支付功能,确保安全性、性能和可扩展性,选择合适的技术方案至关重要。
37 4
知识付费系统源码 PHP
|
11天前
|
移动开发 小程序 PHP
校园圈子论坛系统采取的PHP语音和uni账号开发的小程序APP公众号H5是否只需要4800元?是的,就是只需要4800元
关于校园圈子论坛系统采用PHP语言和uni-app开发的小程序、APP、公众号和H5是否仅需4800元这个问题,实际上很难给出一个确定的答案。这个价格可能受到多种因素的影响
46 8
|
26天前
|
关系型数据库 MySQL PHP
PHP与MySQL的无缝集成:构建动态网站的艺术####
本文将深入探讨PHP与MySQL如何携手合作,为开发者提供一套强大的工具集,以构建高效、动态且用户友好的网站。不同于传统的摘要概述,本文将以一个生动的案例引入,逐步揭示两者结合的魅力所在,最终展示如何通过简单几步实现数据驱动的Web应用开发。 ####
|
26天前
|
SQL 前端开发 PHP
如何使用PHP开发一个购物网站?
在数字化时代,线上购物日益重要。本文介绍如何使用PHP开发一个功能完善、用户友好的购物网站,涵盖需求分析、开发环境选择、数据库设计、前后端开发、用户认证、商品展示、购物车、订单管理、功能扩展及安全性能优化等环节,旨在提供全面的开发指南。
33 3
|
28天前
|
PHP
20241125易支付PHP网站源码
PHP74,上传源码后解压访问域名/install 进行安装 安装完成 之后一定要设置伪静态 源码里面nginx.txt 就是伪静态 然后复制粘贴到伪静态里面保存即可
41 2
|
23天前
|
关系型数据库 MySQL PHP
PHP与MySQL的深度整合:构建高效动态网站####
在当今这个数据驱动的时代,掌握如何高效地从数据库中检索和操作数据是至关重要的。本文将深入探讨PHP与MySQL的深度整合方法,揭示它们如何协同工作以优化数据处理流程,提升网站性能和用户体验。我们将通过实例分析、技巧分享和最佳实践指导,帮助你构建出既高效又可靠的动态网站。无论你是初学者还是有经验的开发者,都能从中获得宝贵的见解和实用的技能。 ####
19 0
|
开发框架 .NET Unix
为什么不用asp而用php开发网站
为什么不用asp而用php开发网站
133 0
|
开发框架 .NET Unix
为什么不用asp而用php开发网站
为什么不用asp而用php开发网站
119 0
|
1月前
|
前端开发 关系型数据库 MySQL
PHP与MySQL动态网站开发实战指南####
【10月更文挑战第21天】 本文将深入浅出地探讨如何使用PHP与MySQL构建一个动态网站,从环境搭建到项目部署,全程实战演示。无论你是编程新手还是希望巩固Web开发技能的老手,都能在这篇文章中找到实用的技巧和启发。我们将一起探索如何通过PHP处理用户请求,利用MySQL存储数据,并最终呈现动态内容给用户,打造属于自己的在线平台。 ####
40 0