王龙军
(成都工业学院 图书与档案信息中心,成都 611730)
PHP和Oracle技术在图书馆新闻管理系统中的应用
王龙军*
(成都工业学院 图书与档案信息中心,成都 611730)
针对目前高校图书馆新闻管理系统开发成本高、集成化程度低、互动性不够等问题,采用PHP和Oracle数据库技术,设计并实现了一套图书馆新闻管理系统。该系统前台实现了新闻信息显示、搜索功能,系统后台实现了用户登录、添加新闻信息、修改新闻信息以及删除信息等功能。
PHP;Oracle数据库;新闻管理系统;图书馆
随着互联网技术和Web技术的迅速发展,高校图书馆信息化建设取得了较大的进展。图书馆新闻管理系统作为高校图书馆信息化建设和图书馆网站建设的重要组成部分,已成为读者最常点击的区块[1]。目前大多数图书馆新闻管理系统采用的开发语言是ASP(Active Server Page,动态服务器页面)、ASP.NET、JSP(Java Server Pages,java服务器页面),数据库一般采用SQL Server数据库,主要存在的问题有:1)开发平台技术成本高。采用ASP、ASP.NET需要IIS(Internet Information Server)平台和Visual Studio开发软件,这些均需要购买。2)系统的集成化程度和效率较低。目前高校图书馆系统的新闻采编、发布、维护等环节均采用人工处理的方式,不能做到所有环节高度集成,存在处理新闻信息时速度低、出错率高、重复性多等问题,因而导致效率低下。3)系统功能不够完善,缺乏与读者的互动。新闻管理系统不仅是让读者浏览新闻,更需要读者的参与。
针对以上问题,本文将免费的PHP(Hypertext Preprocessor,超文本预处理器)语言[2-3]和Oracle数据库技术[4-6]应用于图书馆新闻管理系统,使其功能更加全面,效率更高。
1.1 系统功能结构
本系统在功能上主要分为前台显示模块和后台功能管理模块,如图1所示。其中,前台显示模块包括新闻显示模块、新闻搜索模块;后台管理模块包括用户管理模块、新闻信息管理模块。
图1 系统功能结构
前台显示模块中的新闻显示模块主要分为列表显示新闻模块和详细显示新闻模块。列表显示新闻模块主要显示新闻的关键信息,如新闻标题、日期等信息;详细显示新闻模块主要显示某一条具体新闻的详细信息,主要显示新闻的标题、日期、发表作者、新闻具体内容等。
新闻搜索模块主要是指浏览新闻的读者可以在本模块中快速搜索到自己需要的新闻信息。
登录验证模块主要是验证不同角色的用户登录,本系统的用户主要分为匿名用户、信息管理员、系统管理员3类。各个用户角色根据自己的权限进行相应的操作。匿名用户不需要登录,信息管理员和系统管理员需要登录。信息管理员拥有发表新闻信息、撤销新闻信息等功能,其发表的信息需要系统管理员审核通过后才能显示。系统管理员不仅拥有信息管理员的所有权限,而且拥有审核信息、修改信息、删除信息、增加用户、删除用户等权限。
新闻信息管理模块包括添加新闻、修改新闻、删除新闻、审核新闻等功能,其模块业务流程如图2所示。
图2 新闻信息管理模块
1.2 数据库的设计与实现
本系统数据库的设计主要用到新闻表news、用户表users,如表1、表2所示。
表1 新闻表(news)
表2 用户表(users)
本系统是基于B/S(Browse/Server)[7-8]结构进行开发,服务器系统平台为Windows Server 2003作为,Web服务器为Apache,开发语言采用PHP,后台数据库选用Oracle数据库。
2.1 功能模块实现
2.1.1 配置PHP连接Oracle环境
本文使用的PHP版本为PHP 5.4.9,Oracle选择Oracle 11g。PHP要访问Oracle 11g,要用到OCI8。这个扩展模块需要Oracle8的客户端函数库,由于web服务器和数据库服务器在不同的机器上,因此需要安装Oracle的客户端软件。
配置系统开发环境分2步:
第1步:安装Oracle 11g客户端,通过Net Configuration Assistant建立一个服务,Oracle服务名为newsorcl。
第2步:配置PHP文件,使PHP能支持对Oracle数据库的操作。在php.ini中把;extension=php_oci8.dll前面的注释符号“;”去掉,使PHP能够加载支持Oracle的模块。并把php_oci8.dll拷贝到Windows 2003 server安装目录下的system32子目录,重新启动服务器。
2.1.2 PHP连接Oracle数据库公共文件
在应用数据库前首先要与数据库建立连接,因此可以将数据库的连接代码作为一个公共文件进行存储[9]。本公共文件为conn.php文件,内容如下:
$conn->Connect("orcl","scott","scott");?>
2.1.3 关键功能模块界面显示与代码实现
登录验证模块和新闻显示模块的界面显示和代码实现如下,其他功能模块的实现不在此讨论。
1)登录验证模块
图书馆新闻管理系统登录时,系统将判断用户名、密码、用户权限是否正确。实现界面如图3所示。
图3 登录验证模块的界面
登录验证模块实现代码为:
session_start();
include("conn/conn.php");if($_POST[user]!="" && $_POST[pass]!=""){
$user=iconv("utf-8","gb2312",$_POST[user]);
$pass=iconv("utf-8","gb2312",$_POST[pass]);
$sql="select * from users where name=".$user."and password=".$pass."";
$rst = $conn->execute ( $sql ) or die (error:. $conn->errorMsg () );
if(count($rst->GetArray())>0){
}else{
}
}else{
}
?>
2)新闻显示模块
新闻显示模块主要分为列表显示新闻模块和详细显示新闻模块,这里列举列表显示新闻模块实现界面,如图4所示。
图4 列表显示新闻模块的界面
列表显示新闻模块实现代码如下:
$rst = $conn->execute ( $sqlstr ) or die (error:. $conn->errorMsg () );
while ( ! $rst->EOF ) {
?>
$rst->movenext (); }
$rst->close (); $conn->close ();
?>
本系统使用当前流行的PHP语言和Oracle数据库,以高校图书馆的日常新闻发布与管理为研究目的。其前台功能包括浏览新闻和搜索新闻等功能,能让读者及时准确地获取图书馆的各种信息;后台功能包括用户权限登录、新闻发布与管理等功能。本系统设计的功能更加全面,发布与编辑新闻的效率更高,互动性更好,提高了图书馆新闻管理的效率。
[1] 王玥琳.图书馆新闻发布及管理系统[D].天津:天津师范大学,2011:1-2.
[2] 李欣,刘慧.PHP开发宝典[M].北京:机械工业出版社,2012:4-6.
[3] 潘凯华,刘中华.PHP从入门到精通[M].北京:清华大学出版社,2010:4-6.
[4] 张恒智.Oralce数据库的注入攻击和防御研究[D].上海:上海交通大学,2012:5-9.
[5] 明日科技.Oracle从入门到精通[M].北京: 清华大学出版社,2012:4-5.
[6] 张朝明.21天学通Oracle[M].3版.北京: 电子工业出版社,2014:2-3.
[7] 明日科技,王国辉,王春斌.Java Web编程宝典[M].北京:人民邮电出版社,2011:5-6.
[8] 张恩民.PHP开发实战权威指南[M].北京:清华大学出版社,2012:5-6.
[9] 软件开发技术联盟.PHP+MySQL开发实战[M].北京:清华大学出版社,2013:274-276.
Application of PHP and Oracle Technology in A Library News Management System
WANGLongjun*
(Information Center of Library and Archives, Chengdu Technological University, Chengdu 611730, China)
In view of the situation of the current general news management system for university library with high cost, low integration level ,lack of interactivity, a set of library news management system is designed and implemented based on PHP and Oracle technology in this paper. The system realizes the display and search function for news information, system background implements functions of user login, adding news information, modifing news information and deleting information and other functions. Compared with other systems, the system design is more comprehensive, more efficient in the news of release and editing, the use of more advanced technology and with better interactivity, this system has a certain reference and reference for the development of news management system of university libraries.
PHP(Hypertext Preprocessor); Oracle Database; News Management System; library
10.13542/j.cnki.51-1747/tn.2015.04.008
2015-09-14
王龙军(1977— ),男(汉族),陕西西安人,讲师,硕士,研究方向:计算机网络、数据库、网站开发、软件开发、Android移动应用开发,通信作者邮箱:longlikesoft@163.com。
TP311
A
2095-5383(2015)04-0025-03