摘 要
管理系统是根据课程网站的需求而设计和实现的,主要 用于实现课程系统办公人员对其办公系统内所有公务员进行管理,实现对员工信息的查询、录入、修改和删除;以及发布重要通知、最新信息和规章制度。通过“网上办公,无纸办公”,大大提高办公效率,体现现代政府的高效职能。
关键词: PHP, MySql, Apache, 数据库,数据库实现,数据源 ,电子
课程
ABSTRACT
Ministry of Personnel Management Subsystem(MPMS)isdesigned and implements the function , in the need of the E-GovernmentAffair Net. And currently it mainly uses for implementing the officer in GovernmentAffair System manages all the clerks in its office system efficiently,and implements searching and inserting and modifying and deleting for the information of all clerks,issuing important notice and lately personnel information , bylaws and so on. With ‘Work on net, Work without paper’, that improves the efficiency of handling office business highly, that embodies the powerful capability of the modern government.
Keywords:PHP, Mysql, Apache, database, DB implement, data source,E-GovermentAffair .
第一 章 引言
§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的容量。
§2.2.4 Linux简介
操作系统最好的选择当然是使用面费又稳定的Linux系统。Linux是在1991年发展起来的与UNIX兼容的操作系统,可以免费使用,它的源代码可以自由传播且可任人修改、充实、发展。Linux本身是一个完整的32位的多用户、多任务操作系统。而本次开发过程使用的版本是飓风软件公司出品的国产Linux操作系统。它是经汉化后形成的Linux操作系统。凡是Linux操作系统均可到网上下载。
§2.3 安装及注意事项
LAMP (Linux + Apache + MySQL + PHP/Perl/Python) 近几年来,已经成为Web 社区的事实标准。我们将介绍LAMP组合的安装,假定你的机器上已经安装了Linux ,如果你对Linux 的安装还有什么问题的话,可以去相关的一些开放源码站点论坛上发表贴子,向其他网友寻求帮助。也可以向相关的厂商寻求技术支持。本文的LAMP中的 P,暂时解释为PHP,A解释为Apache,M解释为MySQL,L当然解释为Linux。所有LAMP组合中的软件都是开放源代码产品,所以您不必担心产品的价格以及版权问题。相反,有广大的开放源码社区开发人员的不断努力,这些产品的版本更新速度反而比那些昂贵的专有软件更快。虽然Linux 因为界面问题,会让您望而却步,但是您不必担心,现在,这些软件都采用了浏览器管理界面,好多都提供phpMyAdmin(一个利用PHP 语言在浏览器上管理MySQL的程序)以及WebMin(通过浏览器来管理系统)来让您方便的管理系统。PHP现在的版本已经到了4.0.4pl1,是一门面向对象的交叉平台的服务器端脚本语言。可以嵌入HTML语言中,可以作为Apache 的模块来运行。下面我们以 tarball(.tar.gz)格式(和它相对的是RPM 格式)的版本为例子,来介绍安装过程。
安装过程
1)安装Mysql
因为RPM包安装非常简单而且成功率高所以我选择这种安装方式。
方法:
在Xwindows下双击此文件就可以了。在提示符下输入:
rpm -i MySQL-3.23.38-1.i386.rpm
2)安装Apache和PHP
注:Apache和PHP是在一起安装的,这一点一定要理解。
步骤如下:
a、先确定Apache安装后的路径
b、安装并编译PHP,把PHP作为Apache的模块安装到Apache的安装路径(即Apache的解压缩的路径)
c、安装并编译Apache 因为只有先把PHP作为Apache的模块安装到Apache的安装路径(即Apache的解压缩的路径),再安装Apache才能使Apache执行PHP文件。
开始安装:
解压缩文件:
tar zxvf Apache_1.3.9.tar.gz
tar zxvf PHP-4.0.2.tar.gz
配置Apache确定Apache安装后的路径:
cd Apache_1.3.9 ./configure --prefix=/usr/local/apache
进入PHP的解压目录,输入:
./configure --with-apache=../Apache_1.3.9 --with-mysql --disable-debug --enable-track-vars
注:"../Apache_1.3.9"表示Apache的解压路径,这个路径一定要正确,我是把Apache和PHP放在同一路径下解压的。 这样做就是让PHP作为Apache的模块和Apache一起安装。
下一步:编译、安装PHP到Apache的原始目录中
在提示符下输入:make
完成之后再输入:make install
再将php.ini.dist拷贝到这个目录:/usr/local/lib,并重命名为php.ini
cp php.ini.dist /usr/local/lib
最后一步是安装Apache
进入Apache的解压目录输入:
./configure --prefix=/usr/local/apache --activate-module=src/modules/php4/libphp4.a
接下来:make
make install
至此安装工作完成了。你还需要改动一些地方,才能让Apache执行PHP,如下:
编辑Apache配置文件:
/usr/local/apache/conf/httpd.conf
找到这一行:AddType application/x-httpd-php4 .php4
去掉前面的“#”号。再加上下面的几行:
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php4
重新启动Apache: cd /usr/local/apache/bin ./apachectl restart
用下面这个文件在浏览器下测试Apache和PHP:
test.php
<?
phpinfo();
?>
如果出现了有关PHP的信息,说明你已经成功了!注意大小写!
利用PhpMyAdmin来管理Mysql:将解压后的PhpMyAdmin目录放到你的Apache的htdocs目录下,修改这个文件使之成为中文的界面:config.inc.php
找到有“english”单词的一行,将“english”改成“chinese_gb”存盘,这样就完成了。 这回再到浏览器下执行一下这个目录下的 index.php文件,这下应该出现Mysql的管理界面了而且还是中文,是不是很舒服!