摘 要
管理系统是根据课程网站的需求而设计和实现的,主要 用于实现课程系统办公人员对其办公系统内所有公务员进行管理,实现对员工信息的查询、录入、修改和删除;以及发布重要通知、最新信息和规章制度。通过“网上办公,无纸办公”,大大提高办公效率,体现现代政府的高效职能。
关键词: PHP, MySql, Apache, 数据库,数据库实现,数据源 ,电子
课程
摘 要
管理系统是根据课程网站的需求而设计和实现的,主要 用于实现课程系统办公人员对其办公系统内所有公务员进行管理,实现对员工信息的查询、录入、修改和删除;以及发布重要通知、最新信息和规章制度。通过“网上办公,无纸办公”,大大提高办公效率,体现现代政府的高效职能。
关键词: PHP, MySql, Apache, 数据库,数据库实现,数据源 ,电子
课程
目 录
第一 章 引言……...…………………………….…………………3
§1.1 问题的提出….…………………..………………..3
§1.2 设计方案…….…………………..………………..3
§1.3 系统运行环境.…………………..………………..4
第 二章 设计的理论依据…………………………………………5
§2.1 Linux + Apache + MySQL + PHP 最优组合…5
§2.2 PHP, Apache, Mysql , Linux介绍……….……...6
§2.2.1 PHP……………...…………………………….6
§2.2.2 Apache……...………………………….……...7
§2.2.3 Mysql………...……………………………..…7
§2.2.4 Linux…...……………………………………...8
§2.3 安装及注意事项………………………………...8
第三章 开发过程……………………...……………………….…10
§3.1 设置服务器….………………...…………………10
§3.2 设置数据库…………………………………...….10
§3.2.1 创建数据库和数据表……….………...…...10
§3.2.2 数据库连接…………………...……………13
§3.2.3 创建数据源…….……...………..………….13
§3.3 系统功能实现…………………………………….14
§3.3.1 系统登录………..………………….………14
§3.3.2 规章制度……….…..…………………15
§3.3.3 重要通知…………...……………………....15
§3.3.4 最新信息…………….…..……………15
§3.3.5 信息查询…………………………..……….16
§3.3.6 管理员模块…………….……..……………20
§3.3.7 相关功能链接…………………..…….…....28
第四章 结束语…………………………………...…………….…29
第 五 章 参考文献…………………………..…...…………….…29
第一 章 引言
§1.1 问题的提出
在电子计算机技术发展日新月异的今天,计算机技术、网络技术和信息技术的发展和应用早已深入到了各行各业,并发挥着它们的巨大潜力,特别是网络的高速化、广泛化发展和运用。在我国,各类企业的改革,一切都在朝着社会化、高效化、智能化发展,管理体制的改革更是进行着大手笔。但是,国家政府职能的改革程度还远远不够。课程网站络管理系统是计算机技术和网络迅速发展的一个政府办公应用解决方案。课程网站络管理系统将Internet网络技术与现代管理观念相融合,针对信息技术的特点对办公系统进行规划和重构,对政府内部信息流进行优化及合理配置,生成动态的、安全的、专有的数字化信息源,将办公体系全面自动化,流程化,数字化。以此为桥梁,横向连接同事间的交流与协同工作,纵向实现上下级一体化的高效办公体系,从而更明确、更有效地支持政府的管理和决策。
§1.2 设计方案
本系统采用B/S结构,所有的程序及数据都放在服务器上,终端在取得相应的权限后使用Web页面浏览,录入,修改等功能。在语言方面使用PHP语言,在数据库上我们为了节约成本,采用了免费的MySQL数据库(当然,也可以移植到Oracle上),服务器使用Apache Web服务器。
处理流程如下图:
§1.2.1 功能要求
通过“网上办公,无纸办公”,课程办公系统充分利用强大的网络资源,方便快捷、即时高效完成政府办公。课程管理系统包括个人办公平台、领导办公、行政办公管理、公文管理、信访管理、管理、财务管理、系统管理、电子邮件系统、公共信息等十一主要功能模块组成,利用页面和数据库实现,体现出交互式网络办公。本子系统属于管理模块,将完成对政府系统中所有员工的个人信息和详细信息、部门的简要信息和详细信息、个人信息的管理、工资信息的管理、考勤的管理等功能。本系统具有一定的实用性。
§1.2.2 实现形式
采用页面对话交互方式进行,把页面形成工具(DREAMWAVER4)和动态编辑工具(PHP)以及强大的数据库支持(MYSQL)融为一体,达到完成功能块目的。要求该功能块具有整个系统的统一风格。
§1.2.3 具体内容
(一) 标题栏部分
采用“课程网站”统一标题头,即:左为“网上办公,无纸办公”图片,右为“人民政府为人民”,下为其他功能模块的超链接。
(二) 主体部分
(1)、规章制度:主要介绍政府机关进行管理的有关实施条例或制度,包括管理制度(细则A、细则B)、责权划分表、考核规定、员工守则、员工聘用规定、员工聘用合同(正式、短期)、员工引荐担保规定、劳动合同书规定、高级职员聘任书、服务自愿书等。
(2)、重要通知:主要用于单位发布有关重要通知,由新闻发布系统完成。
(3)、最新信息:主要用于单位发布有关最新信息,由新闻发布系统完成。
(4)、信息查询:该模块提供个人信息的简要查询和详细查询,部门的员工信息简要查询和详细查询。
(5)、管理员登录模块:主要用于管理员的登录,即设置管理员的权限,包括个人信息的录入、修改、删除管理,新闻发布管理、工资信息的管理、考勤信息的管理、相片信息的管理等。
(6)、相关功能链接栏:主要用于适应用户扩展功能,因为本系统目前为试用版,会根据用户需求的改变进行功能设计与实现。
§1.3 系统运行环境
本子系统承接课程系统,对运行环境的要求是:
§1.3.1 硬件需求
下列的配置是本次实际操作中的配置:
·兼容Intel486等级以上的PC电脑。
·64M以上的RAM。
·15GB以上的硬盘空间。
·48倍速以上的光驱。
·1.44软驱。
实际操作中可以略低于此配置。
§1.3.2 软件需求
本系统采用了目前最佳组合-LAMP,即:Linux + Apache + MySQL +PHP, 该组合具有更稳定、高效能、更经济的特点。
·操作系统-Linux,采用“飓风Linux”。
·Web服务器软件-Apache。
·数据库服务器与用户端软件-MySQL。
·页面应用软件-PHP4。
除了上面这些动态网页开发环境的需求,还有一些时在安装时需要的软件,在Linuz系统中都可以找到或到网上下载:
·C语言编辑器-将C语言源文件编译成可执行软件的工具。
·Apxs-制作Apache动态模块的工具。
·SecureEdit-跨平台上传文件的工具。
本次开发过程是:先在Window下编写代码,然后上传到服务器进行调试。
第二章 设计的理论依据
§2.1 Linux + Apache + MySQL + PHP 最优组合
现在的“网络生态”已经不能只有展示的功能,凡是网上下单、网络购物、检索查找等都是在网上随处可见的服务。这些功能的运作都牵涉到用户的选择、输入数据以及服务端处理数据与回应等动作,所以这样的网页即为互动式网页。也正是本系统所要采用的网络形式。
在HTML文件的结构下使用互动式网页就必须在服务器端另外增加这些处理信息的功能,通常是针对用途写一个网页应用程序来负责处理。而以互动式网页存取得数据当然必须能长时间储存,所以网页应用程序就要能存取数据库,在浏览器上显示互动式网页,如下图所示:
通过以上的介绍您应该已经知道,如果是一个网站内容提供者(ICP),要提供互动式网页的服务,必须要有WWW服务器,网页应用程序和数据库这三个成员,当然它们都必须在操作系统下执行,所以把操作系统也算在内总共四项软件。本系统采用了当今最佳组合――LAMP。
LAMP就是Linux、Apache、MySQL加上PHP。首先是Linux操作系统(免费!),这两年在PC地舞台上大放光明,尤其在server地使用上悄然威胁微软的地位。Web服务器Apache(免费!)在全球的website有极大的使用率。数据库MySQL (免费! ), 一个快速、稳定的SQL数据库服务器。PHP(免费! ), 扮演处理互动式信息的网页应用程序的角色。除了稳定、高效能之外,它们均免费,是最经济的选择,而且丰富的网络资源与众多的高手绝对不会让你求教无门。
§2.2、PHP, Apache, Mysql , Linux介绍
§2.2.1 PHP 简介
PHP的全名即是Hypertext Processor,最早的名称由来则是来自PHP Tools(Personal HomePage Tools),PHP的程序引擎是一个公布源代码的Open Source 成员。PHP是一种“服务器端的HTML嵌入式的描速语言(HTML - embedded scripting language)”。其语法混合了C、Java、Perl以及PHP式的新式语法,它比CGI或者Perl可更快速地执行动态网页,同时PHP的数据库层操作功能强大,这使得PHP语言这几年飞速发展,风靡全球。
以下是PHP的基本特点:
·开放源代码――所有的源代码都可以得到。
·免费使用――PHP是一个免费软件,尽可放心使用。
·基于服务器端――由于PHP是在Web服务器端运行的,所以它的程序可以很大、很复杂而不会降低客户端的运行速度。
·跨平台――PHP程序可以在UNIX、Linux或者Windows操作系统下运行。
·嵌入HTML――PHP语言可以嵌入到HTM内部,则易学。
还有语言简单、效率高、分析XML、数据库模块、文件存取、文本处理、复杂的变量,图象处理等特点。
最新PHP4.0的特点:
·别名――通过引用别名为变量赋值,给编程带来极大方便。
·扩充了API模块――提供扩展接口模块。
·个性化的Java支持――PHP4.0和Java的交互。
·对象和数组嵌套――实现功能更加强大的对象以及数组嵌套。
·面向对象的编程――为面向对象的编程、构造类以及对象提供扩展的功能和新特征。
还包括如自动资源释放、布尔类型、进程生成、COM/DCOM支持、与PHP3.0的兼容性很好、配置、加密支持、类型检查、FTP支持、PHP4新增函数或功能增强函数、“Here”打印、HTTP Session fallback系统、ISAPI支持、内存、多维数组、其他类成员函数、对象重载支持、输出缓冲支持、支持引用等特点。编写好后,将其放在服务器的提供的Web的目录里,通过IE浏览器可看到结果“我的第一个PHP程序!”。具体语法参考PHP4.0相关书籍。
§2.2.2 Apache 简介
本系统的操作所使用的web服务器软件为Apache。Apache是目前全世界的网站使用最多的服务器。在2000年2月十全世界有58.08%的使用率。同样地,Apache的优点也是稳定、快速与开放,同时也有众多的功能,并且可以在不同操作系统下执行。前面的内容已经介绍了web 服务器负责完成传送显示在浏览器的 HTML 文件内容,而数据处理就是 PHP 程序的工作了。所以在服务主机使用PHP时必须将解读PHP程序代码的功能加到Apache ,也就是按装Apache 的PHP 模块(module)。以往如果要加入PHP模块,就必须先将PHP的源代码编译成Apache 的模块,再将Apache加上PHP功能模块重新编译。从PHP3开始就支持了Apache 的动态共享对象(Dynamic Shared Object , DSO)模块的功能,也就是说PHP3可以编译DSO模块,Apache 只需在需要执行时调用PHP3模块就可以使用PHP3的功能。这样以来,即使修改PHP、换装新版本或是重新安装PHP都可以不必 动用Apache ,当然PHP4 也可以编译DSO模块。
§2.2.3 MySQL 简介
MySQL数据库系统与PHP整合使用是一个高效率的组合。MySQL是一个多用户(Multi-user)、多线程(Multi-thread)的SQL数据库系统,使用目前最普遍地数据库标准语言:SQL(Structured Query Language)。MySQL包括了服务器端程序与多种 用户端程序及程序库,并且可以在不同平台执行。其特点还有稳定、快速与高灵活性等。
MySQL有瑞典的T.c.X DataKonsultAB公司开发出来,开发的主要目的就是以快速、健全以及使用微目标,最初的开发即是因为该公司需要能在廉价的主机上执行,优于当时各种商用数据库,且快速管理庞大数据库的SQL服务器。MySQL是一个还在开发中的数据库系统,但是其效能已经非常优秀。在MySQL网站(http://www.mysql.org)上你可以看到它们的使用记录是以管理40个以上的数据库,超过10000个表,同时其中还有500个以上的表超过7百万记录,而这些数据总共超过了10Gbytes的容量。
第三章 开发过程
§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表各个字段。
其他表项类似操作。
如果您在计算机领域有任何疑虑或不确定的地方,请毫不犹豫地与老师交流噢,我们期待着为您提供有针对性的建议和指导。您的问题和讨论对我们来说都非常重要。