图书馆管理论文 毕业论文(设计)题目:图书馆管理学生姓名:冯倩学号:71213118专业班级下面是小编为大家整理的图书馆管理论文 ,供大家参考。
毕业论文(设计)
题目:
图书馆管理
学生姓名:
冯倩
学
号:
7121311专业班级:
712131指导教师:
姚明
职称
图书管理系统设计
摘
要
计算机信息化管理有着储存量大,速度快等许多优点,提供给我们的处理信息及时快捷。图书管理系统是指应用电子计算机和网络通信设备,为图书馆及其所属各部门提供图书信息、图书文献信息检索、图书管理过程中图书信息的收集、存储、处理、提取和数据通讯的能力,并能满足所有授权用户对信息的各种功能需求的计算机应用。
本文对图书管理系统国内外研究现状进行分析;阐述了ASP技术和Access数据库技术,并对图书系统总体流程,系统的功能,图书管理系统的数据库设计进行了相关的描述。采用ASP和B/S为结构实现了图书管理系统,其功能主要图书的添加、查询、浏览、删除和修改管理以及相关的图书用户的管理,这样可以方便图书管理员对庞大信息进行管理。
关键词:图书管理系统;ASP;Access2003;数据库
AbstractComputerInformationManagementhasstoragecapacity,speedandmanyotheradvantagestoprovideourprocessinginformationquickly.Thelibrarymanagementsystemisaapplicationofcomputerswiththeelectroniccomputerandnetworkcommunicationequipment,whichprovidesbooks’informationfor
thelibraryandeachdepartment.Itcanprovideinformationaccessandinformationservicesforusers.Thelibrarymanagementsystemhascapabilityofcollectingbooksinformation,savingdataandprocessingdataandextractingdata.Thispaperanalysesthecurrentsituationanddevelopmenttrendofthelibrarymanagementsystem.AnexplanationofASPandAccessdatabasetechnologyareintroduced.Thegeneralflowchartofthesystemdesigningplananddescribesthesystemfunctionsaredescribed.Inthispaper,thelibrarymanagementsystemisimplementedbasedonB/Sstructure.Thefunctionsoflibrarymanagementsystemincludebookstoadd,query,browse,deleteandmodifytherelatedmanagementthemanagementoflibraryusers.Thiswillfacilitatethelibrarianofthehugeinformationmanagement.
Keywords:
Librarymanagementsystem;ASP;Access2003;Database
目
录
论文总页数:20页
1引言
.....................................................................11.1课题背景和意义
.........................................................11.2国内外研究现状
.........................................................11.3本课题的研究方法
.......................................................32系统技术以及运行环境
.....................................................32.1ASP技术简介
...........................................................32.2ACCESS
2003技术简介..................................................52.3SQL语句简介
...........................................................52.3.1SQL
语句介绍
.......................................................52.3.2SQL的优点.........................................................52.4IIS简介..............................................................62.4.1IIS的安装........................................................62.4.2IIS虚拟目录的创建.................................................62.4.3IIS的日常管理.....................................................63系统模块的设计
...........................................................73.1系统的功能分析
.........................................................73.2系统流程图
.............................................................73.3系统功能模块图
.........................................................84系统数据库设计
...........................................................94.1数据库需求分析
.........................................................94.2数据库概念结构设计
....................................................104.3数据库表设计
..........................................................115系统的实现
...............................................................135.1数据库的连接
..........................................................135.2系统的登录页面
........................................................145.3系统的安全性
..........................................................145.4管理员功能简介
........................................................155.5用户功能简介
..........................................................165.6系统关键代码
..........................................................16结
论
....................................................................19参考文献
....................................................................19致
谢
....................................................................2声
明
....................................................错误!未定义书签。
引言
1.1课题背景和意义
随着Internet技术的兴起与发展和网络技术的蓬勃发展,图书馆作为一种信息资源的集散地,图书和用户(学生)借阅资料繁多,包含很多的信息数据的管理,现今,有很多的图书馆都已经开始使用计算机进行信息管理。根据调查得知,以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于图书借阅情况(如借书天数、超过限定借书时间的天数)的统计和核实等往往采用对借书卡的人工检查进行,对借阅者的借阅权限、以及借阅天数等用人工计算、手抄进行。图书馆仍采用手工管理图书的方法,不仅效率低、易出错、手续繁琐,而且耗费大量的人力。
目前,各类高校图书馆的信息化建设都取得了很大发展,基于校园网络的图书资料管理系统相当完善,不仅给广大读者提供了很大的便利,而且也有效地提高了图书资料的利用率。
然而,在许多院系资料室内图书资料的管理手段仍然比较落后。
引起这种现象的主要原因是:一方面,现有的图书资料管理系统虽然功能强大,但由于运行的软硬件平台和系统维护人员的水平要求高,所以并不适用于这些小型专业资料室;另一方面,专业资料室的藏书量较小,一般从几千册到几万册不等,读者人数也较少,大多数单位都没有购买大型图书管理系统软件的经济实力。
即使购买了昂贵的大型管理软件,往往又很难充分应用其所有功能,从而造成经济与资源上的浪费。因此,本论文针对图书管理实际情况,利用ASP与Web数据库技术,设计了一种适合专业资料室的管理系统,提高图书馆的管理效率。
1.2国内外研究现状
图书馆是对信息、知识的物质载体进行收集、加工、整理、积聚、存贮、选择、控制、转化和传递,提供给一定社会读者使用的信息系统。简言之,图书馆是文献信息的存贮与传递中心。在线图书馆是一个开放式的硬件和软件的集合平台,通过对技术和产品的集成,把当前大量的各种文献载体数字化,组织起来,将图书馆服务在互联网上开展。
在线图书馆在我国互联网上安家已有几年的历史,且每年都在发展,但在信息量、访问量及知名度等方面却不尽如人意。社会信息化程度偏低、政府投资较少是阻碍图书馆网站发展的主要原因。中国内地网民人数已从1997年的62万发展到目前的2亿多,虽然增长很快,但不到人口总数的1/6。在这些网民中,究竟有多少人去查询图书馆的信息,尚不得知。
目前国内外的许多大学图书馆、公共图书馆都实现了图书馆的网络化和电子化,它们的特点主要是:服务形式多样化,信息资源多样化。信息检索共享性,读者参与共建。目前Web图书馆存在的主要问题:
1.资源服务共享程度不足基本上各在线图书馆没有实现读者在互联网上续借、预约功能,也不提供电子邮件或手机短信的催还、过期通知等。虽然许多在线图书馆都设置了联机公共目录检索并相应地提供了图书预约服务,但这一服务基本属于虚设。许多在线图书馆虽然提供数据库检索,但大都设置权限,而且大多数还未能提供全文检索,远远不能满足读者的需求。
2.检索服务内容不够丰富许多在线图书馆一般仅限于书目文献的检索,不提供读者个人的流通信息检索,也没有全文检索功能及音频、视频检索功能。一般读者访问的目的是查找文献的具体内容,如果在线图书馆没有为读者提供更方便、更快捷、更丰富的服务,读者只能望洋兴叹。
在线图书馆只有在充分利用新技术,装备,的软件模式,开发出适合本馆的具有交互性、专业性服务模式,更好的为广大读者服务,能使我国在线图书馆走在世界的前列。能为读者提供省时高效、界面友好、功能齐全的网上服务,成功建设网站的目标和灵魂。
现在的在线图书馆基本是没有在线预借图书系统,如读者甲有时紧急要借图书,但书已被读者乙借走,乙还书后又被其他人借走,使得甲延误比较多的时间,而在线预借图书系统则可最大可能的避免这种情况。
图书馆是一个专门收集、整理、保存、传播文献并提供利用的科学、文化、教育和科研机构。图书馆的产生,是保存人类文化遗产的需要。因为有了图书馆这一机构,人类的社会实践所取得的经验、文化、知识者得以系统地保存并流传下来,成为今天人类宝贵的文化遗产和精神财富。近代,资本主义大工业的产生,要求工人有较多的劳动知识和劳动技能,图书馆从而真正走入平民百姓当中,担负起了对工人的科学知识文化教育的任务。
传统图书管理软件是为替代手工录入,从传统数据记录中产生的,这些软件面对Internet及电子商务迅猛发展的网络经济时代显得如此脆弱而只能望e兴叹!
(1)体系封闭,无法实现网络化管理,更无法支持电子商务。传统软件由于产生的技术背景落后,无法实现网络化管理或只支持局部网络应用,更无法支持电子商务,不能适应网络时代企业的需求。
(2)信息单一、落后且缺乏前瞻性,由于技术方面的限制,传统软件无法做到库存信息的实时动态处理、事前的预测并提供前瞻性信息。
(3)对管理考虑甚少。软件依旧没有摆脱传统束缚,以对外报告为其存在目的。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对图书信息进行管理,有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、易修改、可靠性高、存储量大、数据处理快捷、保密性好、寿命长、成本低、便于打印等。这些优点能够极大地提高图书管理的效率,也是图书馆的科学化、正规化管理,与世界接轨的重要条件。
1.3本课题的研究方法
合理运用ASP提供的6个功能强大的内部对象,每个对象具有各自的属性(Property)、方法(Method),有的还拥有数据集合(Collection)与事件(Event),它们共同完成Web中的一些重要工作。这6个对象分别是:Request对象、Response对象、Server对象、Session对象、Application对象
、Objectcontext对象。采用ASP与相关数据库相结合,逐个来完成每个功能。
系统技术以及运行环境
2.1ASP技术简介
ASP是ActiveServerPages的简称,它是一种在微软公司的WEB服务器IIS(InternetInfomationServer)上开发交互网页的新技术。ASP的含义从字面上说,ASP包含三方面含义:
(1)Active:ASP使用了Microsoft的ActiveX技术。ActiveX(COM)技术是现在Microsoft软件的重要基础。它采用封装对象,程序调用对象的技术,简化编程,加强程序间合作。ASP本身封装了一些基本组件和常用组件,有很多公司也开发了很多实用组件。只要你可以在服务器上安装这些组件,通过访问组件,你就可以快速、简易地建立自己的WEB应用。
(2)Server:ASP运行在服务器端。这样就不必担心浏览器是否支持ASP所使用的编程语言。ASP的编程语言可以是VBSCRIPT和JSCRIPT。VBSCRIPT是VB的一个简集,会VB的人可以很方便的快速上手。然而Netscape浏览器不支持客户端的VBSCRIPT,所以最好不要在客户端使用VBSCRIPT。而在服务器端,则无需考虑浏览器的支持问题。Netscape浏览器也可以正常显示ASP页面。
(3)Pages:ASP返回标准的HTML页面,可以正常地在常用的浏览器中显示。浏览者查看页面源文件时,看到的是ASP生成的HTML代码,而不是ASP程
序代码。这样就可以防止别人抄袭程序。
ASP提供了6个功能强大的内部对象,每个对象具有各自的属性(Property)、方法(Method),有的还拥有数据集合(Collection)与事件(Event),它们共同完成Web中的一些重要工作。这6个对象分别是:
Request对象:Request对象可以保存Client端送往Server端的所有信息。这些信息包括:使用Get或Post方法传递的数据、Server环境变量、Cookie信息等。在没有指定表单集合的情况下,程序将以QueryString、Form、Cookie、ServerVariable的顺序搜索所有集合,寻找指定变量。
Response对象:Response对象的主要功能是将信息从Server端传送到Client端。也可以用来实现页面的跳转或Cookie值的设定。由于ASP脚本没有输出“值“的功能,要完成此功能必须使用Response对象。
Server对象:Server对象的主要功能是执行与Web服务器直接相关的一些操作。
Session对象:Session对象能够记录用户每一次上线的个人信息,它相当于每个上线用户的私有变量集合。它随着用户的上线而产生,随着用户的下线或强制解除而终止。
Application对象:Application对象能记录所有Web用户的共有信息,它相当于所有上线用户的公共变量集合。它伴随着Web应用程序的开始运行而产生,随着Web应用程序的运行结束而终止。
Objectcontext对象:Objectcontext对象主要在进行交易处理时使用,利用该对象可以管理、控制这些交易。
ASP是在IIS下开发WEB应用的一种简单、方便的编程工具。在了解了VBSCRIPT的基本语法后,只需要清楚各个组件的用途、属性、方法,就可以轻松编写出自己的ASP系统。
ASP开发Web应用程序的主要特点:
(1)
完全嵌入HTML,与HTML、Script语言完美结合。
(2)
无需编译,容易编写,可在服务器端直接执行。
(3)ActiveXServerComponents具有无限可扩充性。
(4)
使用脚本语言(JavaScript、VBScript或PERL)编写。
(5)
存取数据库轻松容易(使用ADO组件)。
(6)
可使用任何语言编写自己的ActiveXServer组件。
(7)
无浏览器兼容问题。
(8)
程序代码隐藏,客户端仅能看到ASP输出的HTML文件。
(9)
缩短Web开发时间。
2.2ACCESS2003技术简介
Access2003就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。那么什么叫数据库呢?数据库(Database)是由一些有意义和有关系的数据(data)所组合而成。一个数据库中,包含了许多条记录(Record),而每条记录是由多个字段(Field)所组成,不同的字段存放这不同的数据。所以数据库的严格定义是一组相关记录的集合,而字段则是最基本的数据项,也是数据库中最小的单位。在计算机中用来帮我们管理数据库的系统,我们称之为数据库管理管理系统(DatabaseManagementSystemDBMS)。数据库管理系统是架构在一个或多个数据库之上,并针对数据库中的数据进行管理运用。
Access的优点在于它能使用数据表示图或自定义窗体收集信息,数据表示图提供了一种类似于Excel的电子表格,可以使数据库一目了然。另外,Access允许创建自定义报表用于打印或输出数据库中的信息。Access也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。如上所述,Access作为关系数据库开发具备了许多优点,可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。
2.3SQL语句简介
2.3.1SQL语句介绍
SQL全称是“结构化查询语言(StructuredQueryLanguage)”,SQL包含4个部分:
(1)数据查询语言DQL-DataQueryLanguageSELECT。
(2)数据操纵语言DQL-DataManipulationLanguageINSERT,UPDATE,DELETE。
(3)数据定义语言DQL-DataDefinitionLanguageCREATE,ALTER,DROP。
(4)数据控制语言DQL-DataControlLanguageCOMMITWORK,ROLLBACKWORK。
2.3.2SQL的优点
(1)非过程化语言。
(2)统一的语言。
SQL为许多任务提供了命令,包括:查询数据、数据更新、在表中插入记录、在表中修改记录、在表中删除记录、建立、修改和删除数据对象、控制对数据和数据对象的存取
、保证数据库一致性和完整性
、以前的数据库管理系统为上述各类操作提供单独的语言,而SQL将全部任务统一在一种语言中。
(3)是所有关系数据库的公共语言。
由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS转到另一个。所有用SQL编写的程序都是可以移植的。SQL是大多数关系型数据库用做查询语言的语言。它是可以移植的,并且容易学习使用,但是所有SQL语句都必须由数据库服务器独立地执行。这就意味着客户端应用必须把每条查询发送到数据库服务器,等待它处理这个查询,接收结果,做一些运算,然后给服务器发送另外一条查询。所有这些东西都会产生进程间通讯,并且如果客户端在另外一台机器上甚至还会导致网络开销。
2.4IIS简介
2.4.1IIS的安装
WINDOWS2000SERVER提供的WEB服务器组件IIS的安装方法,在开始→设置→控制面板→添加/删除程序命,在添加/删除程序中选择→添加/删除WINDOWS组件按钮,就会弹出WINDOWS组件向导对话框。在其中选择INTERNET信息服务IIS,然后单击下一步按钮,随后根据系统提示一步一步的操作即可完成IIS的安装。
2.4.2IIS虚拟目录的创建
在启动Internet后,在‘默认WEB站点’单击鼠标右键,在快捷菜单中选择“新建”→“虚拟目录”命令,输入虚拟目录的名字,然后按照系统提示操作,即可完成虚拟目录的创建。
2.4.3IIS的日常管理
(1)启动站点,停止、暂停、删除站点。
(2)主目录设置、文档管理、ISAPI筛选器、HTTP头、目录安全性、文档、自定义错误、性能。
2.5HTML简介
超文本标记语言或超文本链接标示语言(标准通用标记语言下的一个应用)HTML(HyperTextMark-upLanguage)是一种制作万维网页面的标准语言,是万维网浏览器使用的一种语言,它消除了不同计算机之间信息交流的障碍。
它是目前网络上应用最为广泛的语言,也是构成网页文档的主要语言。HTML文件是由HTML命令组成的描述性文本,HTML命令可以说明文字、图形、动画、声音、表格、链接等。HTML文件的结构包括头部(Head)、主体(Body)两大部分,其中头部描述浏览器所需的信息,而主体则包含所要说明的具体内容。
HTML文件是可以被多种网页浏览器读取,产生网页传递各类资讯的文件。从本质上来说,Internet(互联网)是一个由一系列传输协议和各类文档所组成的集合,html文件只是其中的一种。这些HTML文件存储在分布于世界各地的服务器硬盘上,通过传输协议用户可以远程获取这些文件所传达的资讯和信息。
网络浏览器,例如NetscapeNavigator或MicrosoftInternetexplorer,
能够解释HTML文件来显示网页,这是网络浏览器的主要作用。当你使用浏览器在互联网上浏览网页时,浏览器软件就自动完成HTML文件到网页的转换。
超级文本标记语言文档制作不是很复杂,但功能强大,支持不同数据格式的文件镶入,这也是万维网(WWW)盛行的原因之一,其主要特点如下:
简易性:超级文本标记语言版本升级采用超集方式,从而更加灵活方便。
可扩展性:超级文本标记语言的广泛应用带来了加强功能,增加标识符等要求,超级文本标记语言采取子类元素的方式,为系统扩展带来保证。
平台无关性:虽然个人计算机大行其道,但使用MAC等其他机器的大有人在,超级文本标记语言可以使用在广泛的平台上,这也是万维网(WWW)盛行的另一个原因。
通用性:另外,HTML是网络的通用语言,一种简单、通用的全置标记语言。它允许网页制作人建立文本与图片相结合的复杂页面,这些页面可以被网上任何其他人浏览到,无论使用的是什么类型的电脑或浏览器。
系统模块的设计
3.1系统的功能分析
本系统是用ASP网页编程+ACCESS数据库+SQL查询语言编句,系统是基于WEB的图书管理系统,在系统中分为大的二个方面:一是系统管理员方面、二是学生(会员)方面。
(1)系统管理员方面的主要功能是:实现会员(学生)添加、会员修改、会员删除、修改登录密码、新书入库、还书操作、收发短消息。
(2)学生方面主要功能是:实现学生查看图书列表、登录密码的修改、个人信息的查看、查询图书、借阅图书、收发短消息。
3.2系统流程图
开始
输入口令
用户选择
no查
验
yes管理员界面
用户界面
结束
图3-1总体流程
要进入系统必须输入正确的口令,还要选择正确的用户类型。如果以上两项其中一个不正确,则提示错误,并返回登录。如果正确则进入相关的用户界面,管理员可以对整个系统进行管理等相关操作,会员就可以进行借书等相关操作。操作结束就可以点退出选项退出整个系统。
3.3系统功能模块图
管理员模块
修改密码
信箱管理
添加书类
新书入库
还书管理
会员管理
添加会员
查询图书
系统配置
系统事件管理
退出系统
图3-2管理员模块
管理员在本系统中能够对用户(学生)进行管理,添加、删除、还能锁定用户,能够对图书进行添加、修改、删除管理,能够运用短消息和用户进行交流,对图书的归还进行处理,对系统进行设置,比如用户借书的最大量、最多天数,对系统事件进行处理等。
图3-3用户模块
修改密码
信箱管理
个人信息
图书查询
图书借阅
发送消息
退出系统
用户模块
用户在本系统中能够查看自己的个人信息、借书情况,修改密码,查看藏管图书,可以对图书进行模糊查询和精确查询,能够借阅还有库存的图书,能够用短消息和其他用户进行交流、遇到问题也可以和管理员进行交流。
系统数据库设计
4.1数据库需求分析
需求分析是在于要弄清用户对开发的数据库应用系统的确切要求。ACCESS数据库设计的第一步是明确数据库的目的和如何使用。也就是说需要从数据库中得到哪些信息。明确目的之后,就可以确定您需要保存哪些主题的信息(表),以及每个主题需要保存哪些信息(表中字段)。要设计一个有效的数据库,必须用系统工程的观点来考虑问题。在系统分析阶段,设计者和用户双方要密切合作,共同收集和分析数据管理中信息的内容和用户对处理的要求。用户的需求具体体现在各种信息的提供,保存,更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据,数据结构处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。针对一般图书管理信息系统的需求,通过对图书管理工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:
●用户信息,属性:用户编号,用户姓名,用户性别,用户密码,所在院系,已借图书数,是否锁定。
主键:用户编号
●图书类别信息,属性:类别编号,类别名称。
主键:类别编号
●图书信息,属性:图书编号,图书名称,图书类别,作者姓名,图书价格,图书数量。
主键:图书编号
●
图书借出信息,属性:借出编号,借书卡号,图书号,图书名,借出日期。
主键:借出编号
●
管理员信息,属性:管理员编号,管理用户名,管理员密码。
主键:管理员编号
●系统日志信息,属性:日志编号,用户类型,用户名,事件,发生时间,操作者IP主键:日志编号
●
短信信息
属性:信息编号,发信人卡号,发信人名字,收信人卡号,收信人名字,是否查看、回复,发送时间,内容。
主键:信息编号
4.2数据库概念结构设计
数据库概念结构设计是数据库应用程序开发一个非常关键的环节,它具有一定的独立性,通常采用E-R图(实体—关系图)的方法进行设计,它能将用户的数据要求明确地表达出来。根据本系统所使用的数据库以及系统的功能结构画出主要的E-R图。
短消息N发送1用户图书N借阅1图4-1E-R图
4.3数据库表设计
(1)系统管理员表
表4-1admin字段名称
idnamepasswd数据类型
自动编号
文本
文本
说明
主键
管理用户名
系统管理密码、(2)图书分类表
表4-2BookClass字段名称
idclassname数据类型
自动编号
文本
说明
主键
图书分类名称
(3)图书表
表4-3Books字段名称
booknosortnotitleauthorpricenumber数据类型
自动编号
数字
文本
文本
货币
数字
说明
主键
图书分类号
图书名字
图书作者
图书价格
图书数量
(4)用户表
表4-4Borrowers字段名称
cardnonamepasswdsexdeptloannumlock数据类型
自动编号
文本
文本
文本
文本
数字
是/否
说明
主键
用户名字
用户密码
用户性别
所属院系
已借书数量
是否锁定
(5)系统配置表
表4-5config字段名称
idmaxLoanNumbermaxLoanKeepDayssystemnamecopyright数据类型
自动编号
数字
数字
文本
文本
说明
主键
最大借阅数量
最长借阅时间
系统名称
版权信息
(6)
图书借出表
表4-6Loans字段名称
idcardnobooknotitledate数据类型
自动编号
数字
数字
文本
日期/时间
说明
主键
借书卡号
书号
图书名字
借书日期
(7)系统日志表
表4-7log字段名称
iduserrightusernameactiondateip数据类型
自动编号
文本
文本
文本
文本
文本
说明
主键
用户类型
用户名字
事件
时间
ip地址
(8)短信息表
表4-8message字段名称
idfromuseridfromusernametouseridtousernamecreatetimeisreadisreplycontent数据类型
自动编号
数字
文本
数字
文本
日期/时间
数字
数字
文本
说明
主键
发信人的卡号
发信人的名字
收信人的卡号
收信人名字
发送时间
是否已阅读
是否已回复
信息内容
5系统的实现
为了保证本系统运行的效率和可靠性,服务器应具有较高的软硬件配置,客户端的要求不是很高。此应用程序可广泛运行于国际互联网即Internet,也可适用于内部的局域网。其运行要求如下:
软件环境:
客户端:Windows98/2000/XP,InternetExplorer(IE)等。
服务器端:WindowsNT/Windows2000,InternetInformationServer(IIS)4.0及其以上版本,IE等;或者Windows98,PersonalWebServer(PWS),IE等。
数据库:采用Access2003,运行于服务器端。
5.1数据库的连接
在整个图书管理系统中,数据库的连接是非常重要的,如果连接不对将无法运行系统,下面是本系统的连接打开数据库的代码文件coon.asp:
<%DimMM_conn_STRINGDimisDebugisDebug=falseifisDebug=truethen
MM_conn_STRING="dsn=library;"MM_conn_STRING="DBQ="+Server.Mappath("data/#tushu.mdb")+";DefaelseultDir=;DRIVER={MicrosoftAccessDriver(*.mdb)};"
endif%>5.2系统的登录页面
本系统分为二种登录模式如图5-1:
(1)管理员登录。
(2)用户登录。
图5-15.3系统的安全性
系统是用ASP网页编程+ACCESS数据库+SQL查询语句,系统中拥有的用户名和密码才能正常进入系统,以下给出部分代码提供参考:
If(CStr(Request("MM_login"))<>"")Then
"""")
&"""
If
Request("userright")="user"ANDisNumeric(Request("cardno"))=falseThenfreshTo"用户名不存在或密码不正确!请重新登陆系统!","login.asp"EndIfIfRequest("userright")="user"Then
sql="SELECTcardno,name,lockFROMBorrowersWHERE"sql=sql&"cardno="&Replace(Request.Form("cardno"),""",sql=sql&"ANDpasswd=""&md5(Request.Form("passwd"),16)Else
sql="SELECT*FROMadminWHERE"sql=sql&"name=""&Replace(Request.Form("cardno"),""",sql=sql&"ANDpasswd=""&md5(Request.Form("passwd"),16)"""")&"""
&"""
EndIfSetrs=executeQuery(sql)IfNotrs.EOFOrNotrs.BOFThen
IfRequest("userright")="user"Then
Ifrs("lock")=trueThen
addLog"user",rs("name")&"("&rs("cardno")&")","登陆freshTo"用户名已被管理员锁定!请速与管理员联系!系统失败,因为帐号被锁定。"","login.asp"EndIfSession("userright")="user"Session("cardno")=CINT(rs("cardno"))Session("username")=rs("name")addLog"","","用户登陆系统"Response.Redirect("main.asp")Session("userright")="admin"Session("userid")=rs("id")Session("username")=rs("name")addLog"","","用户登陆系统"Response.Redirect("main.asp")ElseEndIf以上代码判断输入的卡号和密码是否正确,正确就跳转到main.asp页面,错误则返回登录。如果用户被锁定也无法进入系统,需要管理员解锁才能进入。
判断用户是否是从登录页面进入系统的代码如下:
If
Session("userright")<>userrightANDSession("userright")<>"admin"ThenshowMsg("对不起,您还没有登录,或没有足够的权限,无法进行此操作。")EndIf5.4管理员功能简介
(1)我的信箱可以查看是否有短信息,并可以阅读和回复。
(2)发送短消息可以和用户交流,提醒他们注意还书时间等。
(3)修改密码可以修改自己的登录密码。
(4)查看藏馆图书对整个系统图书的浏览并可以对图书进行修改、删除。
(5)添加图书分类对新的图书种类进行添加。
(6)图书分类查看对系统所有图书的种类浏览。
(7)新书入库对新的图书的添加。
(8)会员还书对用户归还的图书进行处理。
(9)图书借出列表可以查看图书借出情况。
(10)书库图书查询可以对图书进行模糊和精确查找。
(11)系统配置可以对系统进行一些简单的配置。
(12)系统事件可以查看系统日志并进行删除。
(13)添加会员可以对新的会员进行添加。
(14)查看会员可以查看会员借书的情况,还可以锁定、删除会员以及给会员发短消息。
5.5用户功能简介
(1)我的基本资料可以查看自己的基本信息以及借书情况。
(2)我的借书情况可以查看具体的借书信息。
(3)我的信箱可以查看是否有短信息,并可以阅读和回复。
(4)发送短消息可以和其他用户进行交流。
(5)修改密码可以修改自己的登录密码。
(6)查看藏馆图书对整个系统图书的浏览并可以对图书进行借阅。
(7)图书分类查看对系统所有图书的种类浏览。
(8)图书借出列表可以查看图书借出情况。
(9)书库图书查询可以对图书进行模糊和精确查找。
(10)给管理员留言可以给管理员发送短消息跟管理员交流。
5.6系统关键代码
(1)以下代码是实现图书借阅:
<%DimRecordset1__MMColParamRecordset1__MMColParam=Session("bookno")If(Request.QueryString("bookno")<>"")ThenRecordset1__MMColParam=Request.QueryString("bookno")EndIf%><%
DimRecordset1DimRecordset1_numRowsSetRecordset1=Server.CreateObject("ADODB.Recordset")Recordset1.ActiveConnection=MM_conn_STRINGRecordset1.Source="SELECTbookno,title,[number]FROMBooksWHEREbookno="+Replace(Recordset1__MMColParam,""","""")+""Recordset1.CursorType=0Recordset1.CursorLocation=2Recordset1.LockType=1Recordset1.Open()Recordset1_numRows=0IfRecordset1.Fields.Item("number").Value>0then
Dimrs,keepDaysSetrs=executeQuery("SELECT*FROMLoansWHEREcardno="&ifrs.BOFAndrs.EOFthen
keepDays=0keepDays=maxLoanKeepDays-elseSession("cardno")&"ORDERBYdateDESC")DateDiff("d",rs("date").Value,now())endifIfkeepDays<0Then
addLog"",""借书<<"&Recordset1.Fields.Item("title").Value&">>失败,因为有图书逾期未还"
Else
Setrs=executeQuery("selectloannumfromBorrowerswhereifrs("loannum") executeUpdate("UPDATEBooksSET[number]=[number]-1WHEREexecuteUpdate("UPDATEBorrowersSETloannum=loannum+1executeUpdate("INSERTINTOLoanscardno="&Session("cardno"))bookno="+Replace(Recordset1__MMColParam,""","""")+"")WHEREcardno="&Session("cardno")) (cardno,bookno,title,[date])Recordset1.Fields.Item("title").Value&"",""&now()&"")") addLog"","","freshTo"成功借借到书名Values("&Session("cardno")&","&Recordset1.Fields.Item("bookno").Value&",""&书为<<"&Recordset1.Fields.Item("title").Value&">>成功"<<"&Recordset1.Fields.Item("title").Value&">>的图书!","Bookslist.asp" else addLog"","","借书<<"&Recordset1.Fields.Item("title").Value&">>失败,因为借书量超额" freshTo"错误!你的借书总量已经达到最大数量("&maxLoanNumber&"本)!","Bookslist.asp"endifEndIfaddLog"","","借书else<<"&Recordset1.Fields.Item("title").Value&">>失败,因为书库已空" freshTo"错误!书名为<<"&Recordset1.Fields.Item("title").Value&">>的图书的库存量为0,无法外借!","Bookslist.asp"endifRecordset1.Close()SetRecordset1=Nothing%>(2)系统日志代码: FunctionaddLog(userright,username,action) Dimconn,sqlsetconn=Server.CreateObject("ADODB.CONNECTION")conn.OpenMM_conn_STRING"usedefaultIfuserright=""Thenuserright=Session("userright") &")" Ifusername=""Then Ifuserright="admin"Then username=Session("username")username=Session("username")&"("&Session("cardno")ElseEndIfEndIfsql="INSERTINTOlog(userright,username,[action],[date],ip)sql=sql&"""&Replace(userright,""","""")&"""sql=sql&",""&Replace(username,""","""")&"""sql=sql&",""&Replace(action,""","""")&"""sql=sql&",""&now()&"""sql=sql&",""&Request.ServerVariables("REMOTE_ADDR")&"""sql=sql&")"conn.Executesqlconn.CloseVALUES("EndFunction结 论 本文主要在分析了图书管理系统的基础上,采用ASP与ACCESS数据库相结合,基于Windows操作系统设计和实现了一个图书管理系统。系统实现中管理员方面主要功能有图书的添加、图书的归还,以及相关的管理操作。而用户方面主要实现了图书的查询、借阅。同时用户还可以通过短信息与管理员或者其他用户进行在线的交流。虽然不能和大型的图书管理系统相比,但通过这次设计使我对ASP又有了进一步的认识,提高了自己的动手能力。相信在以后的工作中我会做得更好。 参考文献 [1]刘振岩,王欢.ASP.NET数据库开发[M].北京:清华大学出版社,2004。 [2]张景峰.ASP程序设计及应用[M].北京:中国水利水电出版社,2005。 [3]邓文渊,陈惠贞.ASP与网络数据库技术[M].北京:中国铁道出版社,2005。 [4]桂思强.Access数据库设计基础[M].北京:中国铁道出版社,2003。 [5]王国荣.ASP网页制作教程[M].北京:人民邮电出版社,2005。 [6]王龙,黄峰.ASP管理信息系统项目开发实践[M].北京:科学出版社,2005。 [7]郭瑞军,李杰.ASP数据库开发实力精粹[M].北京:电子工业出版社,2005。 致 谢 本文是在XXXX老师的热情关心和指导下完成的,她渊博的知识和严谨的治学作风使我受益匪浅,对顺利完成本课题起到了极大的作用。在此向他表示我最衷心的感谢! 在论文完成过程中,本人还得到了 周围 同学的热心帮助,本人向他们表示深深的谢意! 最后向在百忙之中评审本文的各位专家、老师表示衷心的感谢!