基于Linux +Apache +Mysql +PHP OA 系统的设计与实现Design and Im plementation of OA System based on Linux +Apache +Mysql +Php黄红兵3HUANG Hong 2bing摘 要 办公自动化系统(OA )是电子化信息系统(E MIS )的典型应用,在中小企业中有着广泛的运用,本文介绍是以Linux +Apache +M ysql +PHP +OA 系统的基本架构和主要功能,并给出其中特有功能的系统的实现。
关键词 Linux PHP OA 系统 Abstract O ffice Automation is the m odel of E lectronical Management In formation System (E MIS ).I t has wide 2spread application in small and medium enterprises.This paper introduces the structure of OA system based on Linux +Apache +Mysql +Php.The design and im plementation of its sub 2system are als o presented.K eyw ords Linux PHP OA system3烟台师范学院现代教育技术教学部计算机中心 烟台 2640251 引言办公自动化系统又称OA (O ffice Automatic System ),本文介绍的办公自动化系统是基于I NTERNET 技术,系统后台使用Linux +Apache +Mysql ,应用程序使用PHP 开发的系统。
它具如下特点:a 1免费、轻巧快速、真正跨平台。
b 1可支持多种数据库,包括常用的Oracle 、Msql 、Dbase 、Sybase 、In formix 、Mysql 等。
c 1具备CGI 及类似JavaScript 在Client 端的功能。
d 1语法与C 及Perl 相近。
众所周知Linux 服务器平台的稳定性以及Apache 与Mysql 是免费的以及系统搭配的优越性能,使得基于该平台下开发的办公自动化系统具有较高的安全性、稳定性以及卓越得性能,同时该系统采用B ΠS 三层结构因此又具有很强的可扩展性。
目前有多种技术可用于WE B 网站的开发,像ASP 、CGI 等。
相对M icros oft 公司推出的开发动态网页的ASP 来说,PHP 显得经济、轻巧。
与Linux +Apache +Mysql 组合更加完美、运行更有效、安全系数更高。
对于要求高效、稳定、安全的办公自动化系统OA 来说它更显其优越性。
2 基于Linux +Apache +M ysql +PHP +OA 系统的设计2.1 OA 系统基本架构本文所说OA 系统基本架构如图所示。
以I NTERNET 为媒介OA 系统与客户机进行信息交互,网站响应客户机的请求后,对后台数据库进行操作,现将处理结果反还给客户机。
同时,管理员能够对网站进行远程管理,以便于开展虚拟主机或主机托管业务。
图1 OA 系统基本架构2.2 OA 系统的逻辑结构如图2所示,包括我的办公桌、信息档案、工作与流程、会议与交流、产品与客户关系、管理设置、系统设置、服务与帮助几个模块子系统,每个子系统都能实现各自独立的功能。
2.3 用户管理该办公自动化系统的主菜单项及其子菜单项分别存放在sys -menu 、sys -function 两个数据表中,可以根据功能的需要动态改变,这样就满足了系统的扩展性。
用户的个人信息以及职务存放在user 表、关于职务的详细信息单独存放在一个user-priv 表中。
职务的功能是用来控制系统菜单的。
一个用户可以对应与多个职务,登陆系统后就可以根据用户的职务软件工程信息技术与信息化66 2005年第3期来控制该用户可用的功能菜单。
图22.4 安装与登录采用浏览器方式使得易用性更强,客户端不需安装专用软件,系统的管理维护十分简单。
在服务器上安装了O ffice 2Bill OA 之后,局域网上的其它机器(也可以是在Internet 上)只需打开浏览器(IE5.0以上),输入服务器的网址即可。
进入登录界面后输入管理员所给的用户名和密码,点击登录按钮即可进入办公系统主界面。
同时,O fficeBill OA 系统的售后服务与支持可以为企业客户提供企业自己CI 形象界面方式的登入修改,这样,您便可以拥有一套完整属于自己企业形象的OA 办公系统平台。
3 典型功能的实现3.1 登录界面的检验功能在登录界面中,除了需要校验用户身份和口令外还需要一个安全认证码以便进行双重认证。
其中存放在数据表中的用户口令是经过md5()哈希单向函数加密的,如果用户忘记了口令,那么即使系统管理员也无法帮助该用户找回该口令而只能将该用户的口令清空,这样就充分保证了用户的安全,另外,它具有独特的防止使用相同账户同时登陆系统多次的功能。
其部分代码如下:ΠΠ防止使用相同账户同时登陆系统多次S |C UR -TI ME =date (“Y 2m 2d H :i :s ”,time ());S |USER -STR =“”;S |query =“SE LECT 3from USER where UNIX -TI MES 2T AMP (’S |C UR -TI ME ’)2UNIX -TI MEST AMP (LAST -VISIT -TI ME )<60”;S |curs or =exequery (S |connection ,S |query );while (S |ROW =mysql -fetch -array (S |curs or )){S |USER -STR.=S |ROW[0].“,”;}ΠΠMESS AGE (S |USER -STR ,S |USER -STR );ΠΠMESS AGE (S |USERNAME ,S |USERNAME );ΠΠ判断登陆的用户是否已经在线if (find -id (S |USER -STR ,S |USERNAME )){Message (“警告”,“该用户已在线!”);?><br ><div align =“center ”><input type =“button ”value =“重新登录”class =“Big But 2ton ”onclick =“location =’Π’”><Πdiv ><?exit ;}3.2 OA 系统与数据库联接功能该OA 系统多处使用与后台数据库的连接,为了使用的方便与数据库的连接以及操作数据的结果集做成一个函数conn.php 其具体代码如下: <?function OpenC onnection (){S |H =“localhost ”;S |U =“ro 2ot ”;S |P =“my oa888”;S |D =“OBOA1-3”;S |C =@mysql -pconnect (S |H ,S |U ,S |P )or (S |C =mysql -connect (S |H ,S |U ,S |P ));mysql -se 2lect -db (S |D ,S |C );return S |C ;}function exequery (S |C ,S |Q ){return信息技术与信息化软件工程67mysql -query (S |Q ,S |C );}?>3.3 OA 系统的短信功能该OA 系统使用数据表m obile -sms 、sms 来记录系统发送的内部短信和手机短信。
其中用户发送手机短信就从注册手机上扣除费用,同时会有内部短信告诉收信人有短信发出。
发送手机短信的函数utility -sms2.php 源码如下:<?function send -m obile -sms (S |SPH ONE ,S |DPH ONE ,S |C ONT 2E NT ){ S |UR L =“http :ΠΠ202.106.157.8Πsms1Πpush Πpush.php ”; S |UNAME =“T D ”; S |PASSW D =“td ”; S |SERVICE NUM =“950188”; S |SERVICEI D =“BZ ”; S |FEE =“0”; S |FEETY PE =“01”;S |FORM AT =“15”;S |C ONTE NT =str -replace (“”,“”,S |C ONTE NT );S |filename =S |UR L.“?uname =”.S |UNAME.“&pass wd =”.S |PASSW D.“&sphone =”.$SPH ONE.“&dphone =”.S |DPH ONE.“&servicenum =”.S |SERVICE NUM.“&serviceid =”.S |SERVI 2CEI D.“&fee =”.S |FEE.“&feetype =”.S |FEETY PE.“&format =”.S |FORM AT.“&content =”.S |C ONTE NT;S |fd =@fopen (S |filename ,’r ’)or Message (“”,“服务器无法连接到Internet ,发送至”.S |DPH ONE.“失败!”);if (S |fd ){ S |content =fread (S |fd ,1); fclose (S |fd ); if (S |content ==“0”) { Message (“”,“短信已成功发送到”.S |DPH ONE ); return 1; } else { Message (“”,“短信发送失败,缴费手机号码有误,或者号码”.S |DPH ONE.“有误”); return 0; } } return 0; } ?>4 结束语办公自动化系统(OA )是电子化信息系统(E MIS )的典型应用,它具有良好的可扩展性、高的并发处理能力、良好的容错能力、强的安全性、24小时的不间断服务的特点,其应用范围是满足中小企业办工自动化。
当然在实际运用时还要根据实际情况不断完善其功能设置。
参考文献:[1] 网胜工作室.PHP4.0程序设计.北京:北京希望电子出版社[2000208201][2] 网胜工作室编著.自由网页编程高手PHP&MY S Q L.北京:北京希望电子出版社.[2000205201][3] [美]LeonAtkins on 著.陈虹译.PHP 核心编程.北京:清华大学出版社.[200324][4] M ohammed J K abir 著.Apacheserver 系统管理员手册.北京:电子工业出版社[1999212201](收稿日期:2004212223)(上接第45页)第二届信息隐藏研讨会,北京,2000年6月, 北京:中国电子学会,2000:37249[12] 王焕伟,陈向东.一种基于块的DCT 域数字图像自适应水印技术.解放军理工大学学报(自然科学版),2002,3(5):22226[13] 孔祥维,刘雨.一种自适应数字图象水印算法.第二届信息隐藏研讨会论文集,第二届信息隐藏研讨会,北京,2000年6月,北京:中国电子学会,2000:57259[14] 卢燕,赵德斌,高文.一种基于小波变换的数字图像水印加入与抽取算法.第二届信息隐藏研讨会论文集,第二届信息隐藏研讨会,北京,2000年6月,北京:中国电子学会,2000:71276[15] 华先胜,石青云.一种同时嵌入两类水印的算法,第二届信息隐藏研讨会论文集,第二届信息隐藏研讨会,北京,2000年6月,北京:中国电子学会,2000:7214[16] 丁玮,闫伟奇,齐东旭.基于离散小波变换数字图象水印技术,第二届信息隐藏研讨会论文集,第二届信息隐藏研讨会,北京,2000年6月,北京:中国电子学会,2000:1232131 [作者简介] 李娜(1981-),女,硕士研究生,主要研究方向:信号与信息处理。