ASP圖書館管理系統(tǒng)_第1頁
ASP圖書館管理系統(tǒng)_第2頁
ASP圖書館管理系統(tǒng)_第3頁
ASP圖書館管理系統(tǒng)_第4頁
ASP圖書館管理系統(tǒng)_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

目錄TOC\o"1-3"\h\u5223第一章緒論 2223611.1圖書管理信息系統(tǒng)簡介 2108941.2開發(fā)圖書管理信息系統(tǒng)的目的和意義 325621.3西電長安學院圖書館管理現(xiàn)狀 463641.4研究目的和內(nèi)容 531581第二章圖書管理信息系統(tǒng)開發(fā)工具選擇 688622.1系統(tǒng)數(shù)據(jù)庫概述 632602.1.1數(shù)據(jù)庫 626112.1.2數(shù)據(jù)庫管理系統(tǒng) 630862.1.3數(shù)據(jù)庫的選取 8201382.2SQL語言及基本語句 8188162.2.1SQL概述 8326262.2.2SQL基本語句 9242992.3B/S網(wǎng)絡結構 1078092.4ASP概述 11245582.5JScript腳本語言 1332142.6Access2003概述 138103第三章圖書管理信息系統(tǒng)總體設計 1562383.1系統(tǒng)需求分析 15249353.2系統(tǒng)模塊設計 16132733.3系統(tǒng)數(shù)據(jù)庫設計 16321993.3.1系統(tǒng)數(shù)據(jù)庫的概念設計 16292883.3.2數(shù)據(jù)庫的分析與設計 2125780第四章圖書管理信息系統(tǒng)的實現(xiàn) 2517814.1創(chuàng)建與Access2003數(shù)據(jù)庫的連接 25142624.2登陸窗口功能的實現(xiàn) 2556554.3工作人員模塊窗口功能的實現(xiàn) 27172714.4圖書館管理人員功能模塊 41211154.5借閱排行模塊 44199594.6注銷模塊 4522556第五章系統(tǒng)測試 468530第六章結論與展望 4713934致謝 4828113參考文獻 49第一章緒論1.1圖書管理信息系統(tǒng)簡介傳統(tǒng)的圖書館、資料館收集了人類大量的隨著時間的進程而遺留下來的文化、歷史、文字的痕跡。對于傳統(tǒng)的這些資源集藏地只能通過目錄的方式和物理介質借閱的方式供給公眾和學者使用。計算機和互聯(lián)網(wǎng)是20世紀人類最重要的技術發(fā)明之一,隨著IT技術的發(fā)展和計算機應用的普及,人類創(chuàng)造及產(chǎn)生的各種電子數(shù)據(jù)呈爆炸性的增長態(tài)勢。面對互聯(lián)網(wǎng)上的海量信息,怎樣高效地利用這些信息已成為目前急需解決的問題。圖書館作為人類信息文明進步的象征,已出現(xiàn)了幾個世紀。在這些時間里,圖書館一直承擔著信息的收集、整理及將有組織的資源提供給用戶的功能,在新的形式下,圖書館怎樣發(fā)揮為人類信息有序組織的功能,怎樣在浩如煙海的網(wǎng)絡信息中去盡快發(fā)現(xiàn)、查找到用戶所關心的資源,怎樣打破原來傳統(tǒng)的服務模式,適應新的要求,已成為圖書館及社會各界普遍關心的內(nèi)容。圖書管理信息系統(tǒng),是面向未來互聯(lián)網(wǎng)發(fā)展的信息管理模式。以數(shù)字資源的制作、存儲、管理、傳輸和服務為主要特征的數(shù)字圖書館技術,是2l世紀國際科技文化競爭的焦點之一。數(shù)字圖書館涵蓋多個分布式、超大規(guī)模、可互操作的異構多媒體資源庫群,可面向社會公眾提供全方位的知識服務??梢哉f,數(shù)字圖書館將實現(xiàn)對人類知識的普遍存取,并最終消除人們在信息獲取方面的不平等。它既是知識網(wǎng)絡,又是知識中心,同時也是一套完整的知識定位系統(tǒng)。數(shù)字圖書館以互聯(lián)網(wǎng)為代表的信息共享,協(xié)同工作和個性化服務代表了一種先進文化。圖書管理信息系統(tǒng)是利用數(shù)字技術采集、存儲和保存信息并高效率地提取存儲信息的技術載體。圖書管理信息系統(tǒng)絕不是圖書館的數(shù)字化,圖書管理信息系統(tǒng)已大大地突破了傳統(tǒng)圖書館的概念和范疇,圖書管理信息系統(tǒng)將成為未來社會人們工作、學習、生活的重要支撐點和前提性條件。而相對圖書館的常規(guī)服務內(nèi)容而言,圖書管理信息系統(tǒng)將使圖書館實現(xiàn)革命性的變革。圖書管理信息系統(tǒng)要求以新的方式執(zhí)行圖書館的功能。包括新型信息資源、新的采訪和館臧發(fā)展方向與方式,尤其是有更多的資源共享和電子訂購服務,新的存儲與保存方法、新的分類和標引方式與用戶新的交互模式,對計算機網(wǎng)絡更多的依賴以及圖書館在人員智力構成、組織和經(jīng)濟等方面的顯著變化,都與傳統(tǒng)圖書館大相徑庭。數(shù)字圖書館和傳統(tǒng)圖書館主要業(yè)務比較如表1.1所示。表1.1數(shù)字圖書館和傳統(tǒng)圖書館主要業(yè)務比較業(yè)務范圍傳統(tǒng)圖書館數(shù)字圖書館館藏的發(fā)展與管理選擇書刊、加入館藏、典藏、書架維護、裝訂與保護選擇適于電子轉換的資料或已數(shù)字化的加入館藏版本的管理與控制系統(tǒng)維護采訪了解需求、資料具體采購、資料送達、費用支付了解需求、用EDI方式訂購電子資料、將現(xiàn)有的資料轉化為電子資料、版權管理、費用支付編目手工編目自動編目標引人工標引自動標引目錄卡片目錄元數(shù)據(jù)借閱預約、流通、催還、定題資料服務提供暫時性資料、傳遞資料、自動傳遞有關信息、互聯(lián)的圖書館間交換資料、通向傳統(tǒng)圖書館界面讀者服務幫助用戶查找和檢索資料,指導用戶利用圖書館,并對讀者使用資料的情況匯總組織圖書館的電子資源,引導聯(lián)機幫助建立讀者使用情況文檔1.2開發(fā)圖書管理信息系統(tǒng)的目的和意義隨著電子計算機和通信技術的發(fā)展,人類已經(jīng)逐漸地進入信息化社會。信息和材料、能源一樣成為了社會的基本生產(chǎn)資料,在人類的社會生產(chǎn)活動中發(fā)揮著重要的作用。同時人們對信息和數(shù)據(jù)的利用與處理也已進入自動化、網(wǎng)絡化和社會化的階段。因此,開發(fā)相關的管理信息系統(tǒng)已經(jīng)成為各行各業(yè)的必要和必需了,管理信息系統(tǒng)作為一門邊緣學科,集管理科學、信息科學、系統(tǒng)科學、現(xiàn)代通信技術和電子計算機技術于一體,可以解決企業(yè)或組織所面臨的一些問題,對內(nèi)來看,可以提高工作效率;對外來看,能夠獲得競爭優(yōu)勢。隨著計算機網(wǎng)絡技術的飛速發(fā)展及Internet/Intranet應用在全球范圍內(nèi)的日益普及,當今社會正快速向信息化社會前進,信息管理系統(tǒng)的作用也越來越大。目前,我國很多地縣級城市的圖書館的圖書管理和借閱管理的水平還停留在紙介質的基礎上,顯然這樣的機制已經(jīng)不能滿足當今信息時代的要求,傳統(tǒng)的管理方式必然被基于計算機的信息管理方式所取代。因此根據(jù)圖書館目前實際的管理情況開發(fā)一套符合本地要求的圖書館管理系統(tǒng)是十分必要的。圖書館在日常服務中總是要面對大量的讀者信息、書籍信息以及由兩者相互作用產(chǎn)生的借書信息、還書信息等。因此,圖書館管理的信息化是圖書館管理發(fā)展的必然趨勢。運用結構化系統(tǒng)分析與設計的方法,建立一套有效的圖書館管理信息系統(tǒng),既可以減輕工作人員的工作量,將工作科學化、規(guī)范化,又可以提高圖書館信息管理的工作質量和服務水平。1.3西電長安學院圖書館管理現(xiàn)狀我校的圖書館一直是傳統(tǒng)的手工方式管理,管理過程繁瑣而復雜,執(zhí)行效率低,并且容易出錯。我通過下面的案例來分析手工管理模式的弊病。隨著漢沽一中近幾年的快速發(fā)展,圖書館的藏書數(shù)量和質量也不斷提高,為了規(guī)范圖書館的管理,學校領導要求徹底清查整理圖書館的減書情況,清查整理過程中,圖書館工作人員以姓名為索引對借書情況進行整理,由于陳年舊賬,費了不少時間??梢钥闯鰝鹘y(tǒng)圖書手工管理模式缺陷:(1)讀者借書目的性差、效率低讀者想借書,必須去圖書館,從網(wǎng)上得不到任何自己想要借書的信息,到了圖書館,讀者自己必須親自查閱,有時還未必能找到目標圖書,費時費力。(2)檢索速度慢、效率低因為圖書館的藏書種類多、數(shù)量多,將藏書準確地分門別類,快速檢索,手工進行非常困難,往往是好不容易查到了書的信息,館中沒有此書或已被別人借走。圖書館的規(guī)模越大,這個問題就越突出。(3)借書、還書工作量大借書、還書頻率越大,說明圖書館的作用越大,然而隨之而來的大量的借書、還書登記、實存圖書的更新以及借出圖書超期、遺失等的處理,其工作量也越大,往往是人工操作難以勝任的,而且會不可避免地出現(xiàn)一些差錯。(4)圖書統(tǒng)計工作難、藏書更新不能及時完成圖書館的圖書應根據(jù)科學技術的發(fā)展和教學工作的需要及時添加和更新,然而由于藏書數(shù)量及圖書種類越來越多,加上自然損耗,人為破壞,使圖書的統(tǒng)計工作難以及時完成,藏書的更新也就很難有針對性地進行,藏書的知識結構得不到很好地控制。1.4研究目的和內(nèi)容雖然我校近幾年藏書量有一定增加,但是規(guī)模還不是特別龐大,如果購買專業(yè)的圖書館管理軟件,一方面會浪費大量資金,另一方面會使管理軟件大材小用,造成資源浪費。本設計以ASP作為開發(fā)工具,Access2003建立數(shù)據(jù)庫,以最簡易方式實現(xiàn)學校圖書館工作人員借閱圖書、歸還圖書、查詢借閱圖書情況和歷史信息等功能。本論文的主要研究內(nèi)容包括下面幾個方面。(1)了解目前圖書管理系統(tǒng)的現(xiàn)狀;(2)熟悉ASP編程基礎;(3)熟悉SQL訪問數(shù)據(jù)庫功能;(4)熟悉Jscript腳本語言編程及一些功能的實現(xiàn);(5)掌握Access2003基礎知識;(6)設計數(shù)據(jù)庫:設計界面;(7)開發(fā)數(shù)據(jù)庫。數(shù)據(jù)庫實現(xiàn)的一些功能有數(shù)據(jù)和數(shù)據(jù)說明的醒目顯示;數(shù)據(jù)庫的訪問機制;數(shù)據(jù)文件某種存儲格式導入數(shù)據(jù)窗體,經(jīng)過數(shù)據(jù)完整性校驗存入;(8)設計系統(tǒng):實現(xiàn)兩個功能模塊即圖書館工作人員和圖書管理員兩個模塊;(9)實現(xiàn)系統(tǒng):基本能實現(xiàn)滿足工作人員、圖書管理員兩方面需求;(10)系統(tǒng)測試:通過測試,系統(tǒng)能正常運行。第二章圖書管理信息系統(tǒng)開發(fā)工具選擇軟件選擇及軟件之間的相互搭配在一定程度上決定了圖書管理信息系統(tǒng)的穩(wěn)定性及銜接性,本系統(tǒng)以ASP為開發(fā)工具,利用Access2003建立數(shù)據(jù)庫并以SOL對數(shù)據(jù)庫進行訪問,利用Jscript編寫腳本語言。本章主要對上述四種軟件進行介紹,為后面圖書管理信息系統(tǒng)開發(fā)奠定基礎。2.1系統(tǒng)數(shù)據(jù)庫概述2.1.1數(shù)據(jù)庫數(shù)據(jù)庫是指相互關聯(lián)的數(shù)據(jù)集合。它是一組長期存儲在計算機內(nèi),有組織的、可共享的、具有明確意義的數(shù)據(jù)集合。它主要包括四個要素:用戶數(shù)據(jù)、元數(shù)據(jù)、索引和應用元數(shù)據(jù)。它具有以下幾個特點:(1)它是具有邏輯關系和確定意義的數(shù)據(jù)集合。數(shù)據(jù)庫中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和存儲,具有較小的冗余度、較高的數(shù)據(jù)獨立性,可為各種用戶共享。(2)它是針對明確的應用目標而設計、建立和加載的。(3)表現(xiàn)了現(xiàn)實世界的某些方面。2.1.2數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)(DBMS)是指能夠對數(shù)據(jù)庫進行有效管理的一組計算機程序。它建立在操作系統(tǒng)的基礎上,對數(shù)據(jù)庫進行統(tǒng)一管理和控制。數(shù)據(jù)庫管理系統(tǒng)是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。它的主要功能包括以下幾個方面:(1)數(shù)據(jù)定義功能DBMS提供數(shù)據(jù)定義語言(DataDefinitionLanguage,簡稱DDL),用戶通過它可以方便地對數(shù)據(jù)庫的數(shù)據(jù)對象進行定義,即它是用來創(chuàng)建和修改數(shù)據(jù)庫結構的一種語句,包括SQL中的Cereate、Alter和Drop語句。(2)數(shù)據(jù)操縱功能DBMS還提供數(shù)據(jù)操縱語言(DataManipulationLanguage,簡稱DML),慝戶可以使用DML操縱數(shù)據(jù),實現(xiàn)對數(shù)據(jù)庫的基本操作,如查詢、插入、刪除、和修改等。其中數(shù)據(jù)更新所造成的風險比較大,數(shù)據(jù)庫管理系統(tǒng)必須在更改期內(nèi)保護所存儲的數(shù)據(jù)的一致性,確保有效的數(shù)據(jù)進入數(shù)據(jù)庫,數(shù)據(jù)庫必須保持一致性,DBMS還必須協(xié)調(diào)多用戶的并行更新,以確保用戶和它們的更改不至于影響其它用戶的作業(yè)。(3)數(shù)據(jù)庫的運行管理數(shù)據(jù)庫在建立、運用和維護時由數(shù)據(jù)庫管理系統(tǒng)統(tǒng)一管理、統(tǒng)一控制,以保證數(shù)據(jù)的安全性、完整性、多用戶對數(shù)據(jù)的并發(fā)使用及發(fā)生故障后的系統(tǒng)恢復。(4)數(shù)據(jù)庫的建立和維護功能它包括數(shù)據(jù)庫初始數(shù)據(jù)的輸入和轉換功能、數(shù)據(jù)庫的轉儲和恢復功能、數(shù)據(jù)庫的重組織功能及性能監(jiān)視分析功能等,這些功能通常是由一些實用程序完成DBMS是數(shù)據(jù)庫系統(tǒng)的核心組成部分。它通常由語言處理、系統(tǒng)運行控制和另統(tǒng)維護三大部分組成,給用戶提供了一個軟件環(huán)境,允許用戶快速方便地建立維護、檢索、存取和處理數(shù)據(jù)庫中的信息。根據(jù)數(shù)據(jù)模型的不同,DBMS可以分成層次型、網(wǎng)狀型、關系型、面向對象型等。MSAccess2003就是一種關系型數(shù)據(jù)庫管理系統(tǒng)。關系數(shù)據(jù)庫管理系統(tǒng)提供了對二維表格進行操作的通用程序包。使用關系數(shù)據(jù)庫管理系統(tǒng),應用程序的開發(fā)人員可以把主要的精力集中在如何編寫程序實現(xiàn)最終用戶的業(yè)務需求上,當需要存取數(shù)據(jù)時,可以使用關系數(shù)據(jù)庫管理系統(tǒng)提供的相關功能。在關系數(shù)據(jù)庫中,“關系"對應著表格,表格稱為“數(shù)據(jù)庫表",簡稱為“表”。表的列包含域屬性,表的行包含對應業(yè)務環(huán)境中的實體的記錄。并非所有的關系都同樣符合要求,有些關系比其它關系更結構化一些。為了對比結構差的關系和結構好的關系之間的差別,以本文所設計的圖書管理系統(tǒng)中的圖書和圖書借閱者關系為例來說明,假若設計關系R1(借閱者的圖書證號,學號,姓名,性別,出生年月,民族,系別,圖書編號,入庫時間,圖書名稱,作者,出版社,出版日期,價格,數(shù)量)這個關系的問題出在它有關于兩個不同主題的數(shù)據(jù),就是圖書借閱者和圖書。用這種方式構成的關系在進行修改時,會出現(xiàn)問題。因為一個圖書借閱者可能借閱多本書,如果某個圖書借閱者的某個字段(如系別)出現(xiàn)變更,它所借閱的圖書記錄(可能多個)也就必須變化,這在同一個關系中是不好的。因此數(shù)據(jù)用兩個關系表示更好?,F(xiàn)在如果某圖書借閱者改變了它的系別,只有關系表bookuser的對應行需要改變。結果表明,將關系分別存儲,在顯示借閱者借閱情況的時候將它們結合起來,比把它們存儲在一個合成的表中更好。因此,把關系表bookuser和book進行如下設計:bookuser(借閱者的圖書證號,學號,姓名,性別,出生年月,民族,系別)book(圖書編號,入庫時間,圖書名稱,作者,出版社,出版日期,價格,數(shù)量,圖書狀態(tài))2.1.3數(shù)據(jù)庫的選取數(shù)據(jù)庫應用系統(tǒng)開發(fā)的目標是建立一個滿足用戶長期需求的產(chǎn)品。市面上開發(fā)數(shù)據(jù)庫軟件包括:Access、Oracle、SQLServer、FoxPro等。我選擇MSAccess2003開發(fā)數(shù)據(jù)庫H61,主要有三方面的原因。第一、MSAccess2003是關系數(shù)據(jù)庫,關系數(shù)據(jù)庫優(yōu)點是建立在嚴格的數(shù)學概念的基礎上,概念單一,實體與實體間的聯(lián)系都用關系表示,故其數(shù)據(jù)結構簡單、清晰,存取路徑對用戶透明,故有更高的數(shù)據(jù)獨立性和更好的安全保密性。第二,MSAccess2003是Office2003自帶程序,不像其他數(shù)據(jù)庫,需要安裝數(shù)據(jù)庫軟件;第三,MSAccess2003是大家接觸較多的數(shù)據(jù)庫,學生也學習過這個軟件,在編寫圖書管理信息系統(tǒng)時,數(shù)據(jù)庫的編寫是非常重要的一塊,選用大家熟悉的軟件,只要設計者編寫好表頭,圖書管的工作人員和學生就可以輸入基本信息了,從而方便圖書館工作人員管理,也可以減少我的工作量。2.2SQL語言及基本語句2.2.1SQL概述SQL(StructuredQueryLanguage,結構化查詢語言)是一個功能強大的數(shù)據(jù)庫語言。SQL通常使用于數(shù)據(jù)庫的通訊。SQL語句通常用于完成一些數(shù)據(jù)庫的操作任務,比如在數(shù)據(jù)庫中更新數(shù)據(jù),或者從數(shù)據(jù)庫中檢索數(shù)據(jù)。使用SQL的常見關系數(shù)據(jù)庫管理系統(tǒng)有:Access、Oracle、SQLServer、FoxPro等等。雖然絕大多數(shù)的數(shù)據(jù)庫系統(tǒng)使用SQL,但是它們同樣有它們自立另外的專有擴展功能用于它們的系統(tǒng)。但是,標準的SQL命令,比如“select'’、“Insert”、“Update”、“Delete”、“Create”和“Drop”常常被用于完成絕大多數(shù)數(shù)據(jù)庫的操作。SQL語言集數(shù)據(jù)查詢、數(shù)據(jù)操縱、數(shù)據(jù)定義和數(shù)據(jù)控制功能于一體,主要特點包括:(1)SQL語言語法簡潔、功能豐富。(2)SQL語言是一種一體化的語言。(3)SQL是一種非過程化語言。(4)SQL語言既是交互式語言,又是嵌入式語言。(5)SQL是面向集合的操作方式。2.2.2SQL基本語句上面對SQL的概念及其主要特點進行了介紹,關于SQL語句,主要包括7個命令,分別為SELECT命令、Create命令、Drop命令、Alert命令、Insert命令、Delete命令和Update命令。(1)SELECT是SQL中最常用的命令,其主要功能包括數(shù)據(jù)庫基本查詢、條件查詢、排序查詢、嵌套查詢和連接查詢。語法基本格式如下:SELECT<輸出項列表>From<表名>[where<篩選條件>][ORDERBY<排序關鍵字>[ASC/DESC]](2)Create命令用來創(chuàng)建數(shù)據(jù)庫和創(chuàng)建表,這是數(shù)據(jù)庫其它操作的基礎。其語法格式如下:CREATDATBASE<數(shù)據(jù)庫名>[其它參數(shù)]CREATTABLE[<數(shù)據(jù)庫名>][表名](3)Drop命令與Create命令相對,用于刪除數(shù)據(jù)庫和數(shù)據(jù)表,其語法如下:DropDATBASE<數(shù)據(jù)庫名>[其它參數(shù)]DropTABLE[<數(shù)據(jù)庫名>][表名](4)Alert命令可以根據(jù)實際要求對基本數(shù)據(jù)表的結構進行修改,即增加新的屬性或刪除屬性。其基本語法如下:ALERTTABLE[<數(shù)據(jù)庫名>]表名AddALERTTABLE[<數(shù)據(jù)庫名>]表名DROP(5)Insert命令能將新增數(shù)據(jù)插入數(shù)據(jù)表中。其基本語法格式如下:INSERT<表名>[(<字段名1>,<字段名2>,...]VALUES[<表達式1>,<表達式2>,...](6)Delete命令是從基本表中刪除滿足條件的記錄,其語法格式如下:DELETEFROM<表名>[WHERE<刪除條件>](7)Update命令能夠修改指定表中滿足條件的記錄的相應列值。其語法格式如下:UPDATE<表名>SET<字段名l>=<表達式1>,[<字段名2>=<表達式2>,...][WHERE<更新條件>]2.3B/S網(wǎng)絡結構B/S結構,即Browser/Server(瀏覽器/服務器)結構,是隨著Internet技術的興起,對C/S(Client/Server,客戶,服務器)結構的一種改進而產(chǎn)生的結構。在這種結構下,用戶界面完全通過www瀏覽器實現(xiàn),一部分事務邏輯在前端實現(xiàn),但是主要事務邏輯在服務器端實現(xiàn),形成所謂3-tier結構。B/S結構主要利用了www瀏覽器技術,結合瀏覽器的多種Script語言(VBScript、JavaScript)和ActiveX技術,用通用瀏覽器就實現(xiàn)了原來需要復雜專用軟件才能實現(xiàn)的強大功能,并節(jié)約了開發(fā)成本,是一種全新的軟件系統(tǒng)構造技術。隨著Windows2000/WindowsXP將瀏覽器技術植入操作系統(tǒng)內(nèi)部,這種結構更成為當今應用軟件的首選體系結構。B/S模式是指在TCP/IP的支持下,以HTTP為傳輸協(xié)議,客戶端通過Browser訪問Web服務器以及與之相連的后臺數(shù)據(jù)庫的技術及體系結構。它由瀏覽器、Web服務器、應用服務器和數(shù)據(jù)庫服務器組成,其物理結構圖和信息流程圖如圖2.1和圖2.2所示,B/S模式突破了傳統(tǒng)的文件共享及C/S模式的限制,實現(xiàn)了更大程度的信息共享,任何用戶只要通過瀏覽器即可訪問數(shù)據(jù)庫,從而克服了時間和空間的限制。圖2.3B/S模式物理結構圖2.3B/S模式信息流程2.4ASP概述在圖書管理信息系統(tǒng)中,我選擇的開發(fā)工具為ASP(ActiveServerPages),即動態(tài)服務器主頁。ASP并不是一種編程語言,而Mierosoft公司開發(fā)的一種類似HTML、Script與CGI的結合體。ASP沒有專門的編程語言,而是允許使用VBScript、JavaScript等在內(nèi)的許多已有的腳本語言編寫ASP程序。從軟件的技術層面看,ASP有如下的特點:(1)無需編譯:ASP腳本集成于HTML當中,容易生成,無需編譯或鏈接即可直接解釋執(zhí)行。(2)易于生成:使用常規(guī)文本編輯器(如Windows下的記事本),即可進行*.a(chǎn)sp頁面的設計。若從工作效率來考慮,不妨選用具有可視化編輯能力的VisualInterDev。(3)獨立于瀏覽器:用戶端只要使用可解釋常規(guī)HTML碼的瀏覽器,即可瀏覽ASP所設計的主頁。ASP腳本是在站點服務器端執(zhí)行的,用戶端的瀏覽器不需要支持它。因此,若不通過從服務器下載來觀察木.a(chǎn)sp主頁,在瀏覽器端看不到正確的頁面內(nèi)容。(4)面向對象:在ASP腳本中可以方便地引用系統(tǒng)組件和ASP的內(nèi)置組件,還能通過定制ActiveXServerComponent(ActiveX服務器組件)來擴充功能。(5)與任何ActiveXScripting語言兼容:除了可使用VBScript和JScript語言進行設計外,還可通過Plug-in的方式,使用由第三方所提供的其它Scripting語言。(6)源程序碼不會外漏:ASP腳本在服務器上執(zhí)行,傳到用戶瀏覽器的只是ASP執(zhí)行結果所生成的常規(guī)HTML碼,這樣可保證辛辛苦苦編寫出來的程序代碼不會被他人盜取。從應用的層面看,ASP有如下的功能:(1)處理由瀏覽器傳送到站點服務器的表單輸入。(2)訪問和編輯服務器端的數(shù)據(jù)庫表。使用瀏覽器即可輸入、更新和刪除站點服務器的數(shù)據(jù)庫中的數(shù)據(jù)。(3)讀寫站點服務器的文件,實現(xiàn)訪客計數(shù)器、座右銘等功能。(4)提供廣告輪播器、取得瀏覽器信息、URL表管理等內(nèi)置功能。(5)由Cookies讀寫用戶端的硬盤文件,以記錄用戶的數(shù)據(jù)。(6)可以實現(xiàn)在多個主頁間共享信息,以開發(fā)復雜的商務站點應用程序。(7)使用VBScript或JScript等簡易的腳本語言,結合HTML碼,快速完成站點的應用程序。通過站點服務器執(zhí)行腳本語言,產(chǎn)生或更改在客戶端執(zhí)行的腳本語言。(8)擴充功能的能力強,可通過使用VisualBasic、Java、VisualC++等多種程序語言制作ActiveXServerComponent以滿足自己的特殊需要。2.5JScript腳本語言腳本語言的語法簡單,容易使用,可以在客戶端,也可以用在服務器端,可以在IIS中指定ActiveSeverPages的默認語言。腳本語言可以分為客戶端腳本和服務器端腳本,客戶端腳本是由瀏覽器完成腳本解析工作,執(zhí)行腳本代碼,這樣可以減輕服務器的負擔。而且客戶端腳本運行起來比服務器端腳本快得多,當一個瀏覽器的用戶執(zhí)行了一個操作時,不必通過網(wǎng)絡對其作出響應,客戶端腳本就可以作出相應。服務器腳本是在服務器上執(zhí)行的語言。服務器為一個站點提供文件,而瀏覽器接受這些文件。服務器端編程語言執(zhí)行站點主機上的所有操作,解析腳本代碼并把結果發(fā)送回客戶端瀏覽器。經(jīng)常用到的腳本語言有VBScript和JScript。本系統(tǒng)使用JScript,JScript是Microsoft公司對ECMA262語言規(guī)范的一種實現(xiàn),并且提供了一些MicrosoftInternetExplorer的功能的增強特性,其主要特點表現(xiàn)在以下三個方面:(1)JScript是一種解釋型的,基于對象的腳本語言。盡管與諸如C++和Java這樣成熟的面向對象的語言相比,JScript的功能要弱一些,但對于它的用途而言,JScript的功能已經(jīng)足夠大了。(2)JScript不是任何其他語言的精簡版,也不是任何事物的簡化,但是它也有局限性。例如,不能使用該語言編寫獨立運行的應用程序,并且其讀寫文件的功能也很少。此外JScript腳本只能在某個解釋器上運行,該解釋器可以是Web服務器,也可以是WWW瀏覽器。(3)JScript是一種寬松類型的語言。這意味著不必顯示定義變量的數(shù)據(jù)類型。此外,在大多數(shù)情況下,JScript將根據(jù)需要自動進行轉換。2.6Access2003概述本系統(tǒng)用到的數(shù)據(jù)庫為MSAccess2003。Access是微軟公司Office辦公套件中一個極為重要的組成部分,是世界上最流行的桌面數(shù)據(jù)庫管理系統(tǒng),具有基本的數(shù)據(jù)庫功能,不僅是一個很好的管理工具,還是一個非常強大的前端應用開發(fā)工具,可以像使用Excel一樣方便使用它。利用它可以方便地建立日常的管理數(shù)據(jù)庫,并尋找復雜而又穩(wěn)定的應用系統(tǒng),因此目前Access被廣泛用于許多企業(yè)或公司的日常管理中,是中小型數(shù)據(jù)庫管理系統(tǒng)的主要工具之一。與其他數(shù)據(jù)庫管理系統(tǒng)相比,Access具有存儲文件單一、支持長文件名、兼容多種數(shù)據(jù)庫格式、具有WEB網(wǎng)頁發(fā)布功能、可用于客戶/服務器方式和操作使用方便等特點。Access是一個關系型數(shù)據(jù)庫,關系型數(shù)據(jù)庫是用途最廣泛的一種數(shù)據(jù)庫類型。在關系型數(shù)據(jù)庫中,可定義數(shù)據(jù)庫中各個表之間的關系。利用這些關系,可以很方便的對數(shù)據(jù)進行各種增、刪、改、查詢及報表生成。關系型數(shù)據(jù)庫的另一個優(yōu)點是不必存儲冗余信息。作為一個關系型數(shù)據(jù)庫,Access能完成以下功能。(1)可以為每類信息創(chuàng)建一個表,用其存儲信息。(2)可以定義各個表間的關系。(3)可創(chuàng)建查詢來檢索符合條件的數(shù)據(jù),包括來自多個表的數(shù)據(jù),也可利用查詢來更新和刪除多條汜錄,并對數(shù)據(jù)執(zhí)行各種計算。(4)可創(chuàng)建窗體,直接查看、輸入及更改表中數(shù)據(jù)。(5)可創(chuàng)建報表來分析數(shù)據(jù)或將數(shù)據(jù)以特定的方式打印出來。(6)可利用宏和VB將各種數(shù)據(jù)庫對象連接起來,形成一個數(shù)據(jù)庫應用系統(tǒng)。與Office的其他組件一樣,Access同樣也提供了大量的向導,以便完成各項操作。

第三章圖書管理信息系統(tǒng)總體設計系統(tǒng)的總體設計是指在系統(tǒng)調(diào)查與分析的基礎上,根據(jù)本學校的實際情況對整個系統(tǒng)在結構上的劃分,硬軟件環(huán)境的配置和確定系統(tǒng)與模塊的處理流程。3.1系統(tǒng)需求分析圖書管理信息系統(tǒng)需要滿足來自四個方面的基本需求,分別是對系統(tǒng)使用者進行審核的需求,系統(tǒng)工作人員需求、系統(tǒng)管理人員需求和圖書借閱者需求。系統(tǒng)工作人員對主要完成圖書借閱、圖書歸還、新書入庫、圖書管理和分類管理功能,同時形成借書或還書報表,還可通過圖書編號查詢相應的借閱情況及查看己歸還的圖書信息(即歷史信息);圖書管理人員除具有圖書工作人員的一切功能外,還可以進行圖書館工作人員用戶和密碼的注冊和注銷;對于圖書借閱者,由于漢沽一中圖書館主要面向學校老師借書,而學校老師的數(shù)量比較少,因此沒有必須要給每位老師都辦一個帶有條形碼的借書證,圖書借閱主要以登記老師姓名及一些備注信息為主,如果借閱者想要查詢目標書目就必須去圖書館讓圖書館工作人員進行查詢。為了防止惡意程序進入圖書管理信息系統(tǒng),對系統(tǒng)使用者一定要認真審核,因此對登陸系統(tǒng)要多一些考慮,采用一些保密程序,使一些黑客程序無法破解用戶信息。本系統(tǒng)采用MD5密碼保護程序,即使黑客進入后臺管理系統(tǒng),也無法得知用戶的密碼。在此模塊中,圖書館工作人員可以為圖書借閱者加入借書記錄或是還書記錄,并生成相應的報表給用戶查看和確認。圖書館工作人員可以瀏覽、查詢、統(tǒng)計、添加借閱圖書的基本信息及刪除己歸還的圖書的基本信息,但不能刪除和修改己經(jīng)借閱的圖書相關信息,當刪除某條圖書借閱的基本信息記錄時,應實現(xiàn)對該圖書借閱者借閱記錄的級聯(lián)刪除。本功能實現(xiàn)對圖書信息的管理和統(tǒng)計。3.2系統(tǒng)模塊設計依據(jù)系統(tǒng)的需求分析,我把系統(tǒng)分為兩個模塊,即工作人員操作模塊和管理員操作模塊,每個模塊功能如圖3.1所示。圖3.1系統(tǒng)功能結構圖3.3系統(tǒng)數(shù)據(jù)庫設計3.3.1系統(tǒng)數(shù)據(jù)庫的概念設計在概念設計階段中,設計人員從用戶的角度看待數(shù)據(jù)及處理要求和約束,產(chǎn)生一個反映用戶觀點的概念模式,然后再把概念模式轉換成邏輯模式。將概念設計從設計過程中獨立開來,使各階段的任務相對單一化,設計復雜程度大大降低且不受特定DBMS的限制。利用ER方法進行數(shù)據(jù)庫的概念設計,可分成三步進行:首先設計局部ER模式,然后把各局部ER模式綜合成一個全局模式,最后對全局ER模式進行優(yōu)化,得到最終的模式,即概念模式。設計局部E-R模式圖書信息實體,包括圖書編號、條形碼、書編號、書籍名稱、出版社、主編、簡介、定價、購置時間、圖書分類、冊數(shù)、已借出數(shù)量、圖書縮略圖、備注、借閱數(shù)量、借閱記錄。如圖3.2所示。圖3.3圖書信息E-R圖圖書用戶登記實體(姓名和備注)如圖3.3所示。圖3.3圖書用戶登記E-R圖圖書目錄實體,包括分類編號、目錄名稱、根目錄和目錄描述。如圖3.4所示。圖3.4圖書目錄E-R圖圖書借閱信息實體,包括編號、圖書條形碼、圖書、姓名、是否借出、借出時間、操作人、歸還時間和備注九個字段。如圖3.5所示。圖3.5圖書借閱信息E-R圖ER模型的“聯(lián)系",用于刻畫實體之間的關聯(lián)。一種完整的方式是對局部結構中任意兩個實體類型,依據(jù)需求分析的結果,考察局部結構中任意兩個實體類型之間是否存在聯(lián)系。若有聯(lián)系,進一步確定是1:N,M:N,還是1:1等。還要考察一個實體類型內(nèi)部是否存在聯(lián)系,兩個實體類型之間是否存在聯(lián)系,多個實體類型之間是否存在聯(lián)系等等。設計全局E-R模式所有局部ER模式都設計好了后,接下來就是把它們綜合成單一的全局概念結構。全局概念結構不僅要支持所有局部ER模式,而且必須合理地表示一個完整、一致的數(shù)據(jù)庫概念結構。(1)確定公共實體類型為了給多個局部ER模式合并提供開始合并的基礎,首先要確定各局部結構中的公共實體類型。在這一步中我僅根據(jù)實體類型名和鍵來認定公共實體類型。一般把同名實體類型作為公共實體類型的一類候選,把具有相同鍵的實體類型作為公共實體類型的另一類候選。(2)局部ER模式的合并合并的原則是:首先進行兩兩合并;先合并那些現(xiàn)實世界中有聯(lián)系的局部結構:合并從公共實體類型開始,最后再加入獨立的局部結構。(3)消除沖突沖突分為三類:屬性沖突、結構沖突、命名沖突。設計全局ER模式的目的是把若干局部ER模式形式上合并為一個ER模式,而在于消除沖突,使之成為能夠被所有用戶共同理解和接受的同一的概念模型。(4)全局ER模式的優(yōu)化在全局ER模式后,為了提高數(shù)據(jù)庫系統(tǒng)的效率,還應進一步依掘處理需求對ER模式進行優(yōu)化。一個好的全局ER模式,除能準確、全面地反映用戶功能需求外,還應滿足下列條件:實體類型的個數(shù)要盡可能的少;實體類型所含屬性個數(shù)盡可能少;實體類型間聯(lián)系無冗余。本系統(tǒng)全局ER模式如圖3.6所示。圖3.6圖書管理系統(tǒng)全局E-R圖3.3.2數(shù)據(jù)庫的分析與設計本次開發(fā)的數(shù)據(jù)庫包括五個方面。包括工作人員信息表manager、入庫圖書信息表ebook、圖書分類表Folder、圖書借閱管理booklog、圖書用戶登記表bookuser。工作人員信息表manager工作人員信息表用于存放工作人員的登錄信息,包括編號(ID)、用戶名(Usefid)、密碼(Password)和是否為管理員(Isadmin)四個字段。用戶信息表結構如表3.1所示。表3.1工作人員信息表字段名數(shù)據(jù)類型及長度說明備注ID長整形編號主關鍵字Userid文本(10)用戶名允許為空Password文本(50)密碼允許為空Isadmin邏輯是否管理員是,否入庫圖書信息表ebook圖書信息表用于存儲所有圖書的信息,包括圖書編號(id)、條形碼(tiaoxingma)、書編號(bianhao)、書籍名稱(shuming)、出版社(chubanshe)、主編(zhubian)、簡介(jianjie)、定價(dingjia)、購置時間(shijian)、分類ID(folderid)、冊數(shù)(ceshu)、已借出數(shù)量(yijie)、圖書縮略圖(bookpic)、備注(beizhu)、借閱數(shù)量(jleyueshu)、借閱記錄(logid)。入庫圖書信息表結構如表3.2所示。表3.2入庫圖書書信息表字段名數(shù)據(jù)類型及長度說明備注ID長整形編號主關鍵字tiaoxingma文本(100)條形碼不能為空Bianhao文本(100)書編號允許為空Shuming文本(100)書籍名稱不能為空Chubanshe文本(100)出版社允許為空Zhubian文本(100)主編允許為空Jianjie備注簡介允許為空Dingjia貨幣定價允許為空Shijian日期/時間購置時間允許為空Folderid數(shù)字分類ID不能為空Ceshu數(shù)字冊數(shù)不能為空Yijie數(shù)字已借出數(shù)量不能為空Bookpic數(shù)字圖書縮略圖上傳圖片Beizhu數(shù)字備注允許為空Jieyueshu數(shù)字借閱數(shù)量不能為空Logid數(shù)字借閱記錄不能為空圖書分類表Folder圖書分類表用于對圖書的分類,本程序是以圖書分類來查找相應圖書,并查閱圖書相關信息。包括分類編號(Folderid)、目錄名稱(FolderName)、根目錄(FolderParentID)和目錄簡要描述(FolderDescription)四個字段。圖書分類表結構如表3.3所示。表3.3圖書分類表字段名數(shù)據(jù)類型及長度說明備注Folderid長整形分類編號主關鍵字FolderName文本(100)目錄名稱不能為空FolderParentID數(shù)值根目錄0FolderDescription邏輯目錄簡要描述允許為空圖書借閱管理booklog圖書借閱管理用于對圖書借閱時間、歸還時間、借閱人等信息進行儲存,比方便圖書館工作人員查詢,包括編號(ID)、圖書條形碼(tiaoxingma)、圖書ID(bookid)、姓名(xingming)、是否借出(1eixing)、借出時間(jcsj)、操作人(caozuoren)、歸還時間(ghsj)和備注(beizhu)九個字段。圖書借閱管理表結構如表3.4所示。表3.4圖書借閱管理表字段名數(shù)據(jù)類型及長度說明備注ID長整形編號主關鍵字tiaoxingma文本(100)圖書條形碼不能為空bookid數(shù)字圖書ID不能為空xingming文本姓名允許為空1eixing是/否是否借出1借出0歸還jcsj日期/時間借出時間不能為空caozuoren文本操作人允許為空ghsj日期/時間歸還時間不能為空beizhu備注備注允許為空圖書用戶登記表bookuser圖書用戶登記表主要用于圖書借閱人的登記,以方便查詢。包括編號(ID)、借閱人姓名(username)、備注三個字段(beizhu)。圖書用戶登記表結構如表3.5所示。表3.5圖書用戶登記表字段名數(shù)據(jù)類型及長度說明備注ID長整形編號主關鍵字username文本借閱人姓名不能為空beizhu備注備注可以為空第四章圖書管理信息系統(tǒng)的實現(xiàn)4.1創(chuàng)建與Access2003數(shù)據(jù)庫的連接網(wǎng)站頁面與后臺數(shù)據(jù)庫的連接,主要是靠conn.asp文件實現(xiàn),以后當需要對程序中的數(shù)據(jù)庫進行操作時,只需要用<!--#IncludeFile="Neeao_SqlIn.Asp"-->命令可以直接調(diào)用該程序打開數(shù)據(jù)庫。代碼如下:<%dimconn,rs,datapathsetconn=Server.CreateObject("ADODB.Connection")datapath="book.mdb"dbpath=Server.MapPath(datapath)conn.Open"Provider=Microsoft.Jet.OLEDB.4.0;JetOLEDB:DatabasePassword=;DataSource="&dbpathsetrs=Server.CreateObject("ADODB.Recordset")%>4.2登陸窗口功能的實現(xiàn)本窗口是為了讓圖書工作人員或圖書館管理員按照用戶名和密碼進行登錄,實現(xiàn)對圖書館各類信息的管理。圖4.1系統(tǒng)登陸界面下面代碼主要檢測輸入的用戶名和密碼是否為空,如果用戶名為空,對話框會提醒“請輸入用戶名”,如果密碼為空,對話框會提醒“請輸入密碼”。<scripttype="text/javascript">functionchecklogin(){if(document.form1.username.value==''){alert('請輸入用戶名');document.form1.username.focus()document.form1.username.select();returnfalse;}if(document.form1.password.value==''){alert('請輸入密碼');document.form1.password.focus()document.form1.password.select();returnfalse;}}</script>用戶名和密碼輸入之后,系統(tǒng)會在manager數(shù)據(jù)表中查找相互對應的用戶名和密碼,如果與manager數(shù)據(jù)表中記錄相符合,系統(tǒng)會顯示“登錄成功”并進入圖書管理系統(tǒng)界面,如果與manager數(shù)據(jù)表中記錄不相符,系統(tǒng)會顯示“密碼錯誤”。<!--#includefile="md5.asp"--><!--#includefile="conn.asp"--><%dimactionaction=trim(request.QueryString("action"))ifaction="chkuser"thendimpassword,usernameusername=request.Form("username")password=request.Form("password")password=md5(password,16)setrs=conn.execute("select*frommanagerwhereuserid='"&username&"'andpassword='"&password&"'")ifnotrs.eofthensession("username")=rs("userid")session("userid")=rs("id")ifrs("isadmin")=truethensession("isadmin")="admin"endif response.Write"<script>alert('登錄成功!\n\n歡迎使用圖書管理系統(tǒng)。');window.location.href='main.asp';</script>"elseresponse.Write"<script>alert('密碼錯誤!\n\n請重試!');window.location.href='index.asp';</script>"endifendif%>4.3工作人員模塊窗口功能的實現(xiàn)4.3.1借書模塊借閱人在尋找到自己的目標圖書后,向工作人員申請借閱,工作人員點擊我要借書按鈕,進入結束程序,打開圖書借閱對話框(如圖4.2所示),工作人員輸入圖書的條形碼,點擊提交按鈕,如果條形碼輸入正確,會顯示借閱成功,進入借閱登記對話框,借閱對話框中包括三方面內(nèi)容,分別為圖書名稱、借閱者姓名和備注信息,輸入完成之后,借閱管理數(shù)據(jù)庫中增加一條圖書借閱記錄,顯示借閱書籍條形碼、借閱者姓名、借閱者以、借閱時間及借閱狀態(tài)。如果輸入條形碼錯誤,并且圖書數(shù)據(jù)庫中不存在與條形碼相對應的數(shù)據(jù),對話框會顯示“該書暫未加入系統(tǒng),請先加入系統(tǒng)!”。圖4.2借書界面<!--#includefile="conn.asp"--><!--#includefile="checkuser.asp"--><%'增加借閱記錄iftrim(request.querystring("action"))="jieyue"thenbookid=cint(trim(request.Form("bookid")))tiaoxingma=request.form("tiaoxingma")xingming=request.form("xingming")beizhu=request.form("beizhu")caozuoren=session("bookadmin")jcsj=formatdatetime(now(),2)Setrs=server.createobject("adodb.recordset")sql="select*frombooklog"rs.opensql,conn,1,3rs.addnewrs("tiaoxingma")=tiaoxingmars("bookid")=bookidrs("xingming")=xingmingrs("leixing")=Truers("jcsj")=jcsjrs("caozuoren")=caozuorenrs("beizhu")=beizhulogid=rs("id")rs.updateSetrs=conn.execute("updateebooksetjieyueshu=jieyueshu+1,yijie=yijie+1,logid="&logid&"whereid="&bookid&"")response.write"<script>"response.write"alert('借閱成功!');"response.write"window.location.href='jieyue.asp';"response.write"</script>"response.End()endiftiaoxingma=trim(request.form("tiaoxingma"))setrs=server.CreateObject("adodb.recordset")sql="select*from[ebook]wheretiaoxingma='"&tiaoxingma&"'"rs.opensql,conn,1,1ifrs.eofthenresponse.Write"<script>"response.Write"alert('該書暫未加入系統(tǒng),請先加入系統(tǒng)!');"response.write"window.location.href='jieyue.asp';"response.write"</script>"rs.closesetrs=nothingresponse.endelseifrs("yijie")>=rs("ceshu")thenresponse.Write"<script>"response.Write"alert('該書已經(jīng)全部借出!');"response.write"window.location.href='jieyue.asp';"response.write"</script>"rs.closesetrs=nothingresponse.endendiftiaoxingma=rs("tiaoxingma")shuming=rs("shuming")bookid=rs("id")rs.closesetrs=nothingendif%><bodyonLoad="xingming();"><scriptlanguage="JavaScript"type="text/javascript">functionxingming(){document.form1.xingming.focus();document.form1.xingming.select();}functioncheckform(){if(document.form1.xingming.value==""){alert('請輸入借閱者姓名!');document.form1.xingming.focus();document.form1.xingming.select();returnfalse;}}4.3.2還書模塊借閱人去圖書館還書,工作人員點擊我要還書按鈕,打開圖書歸還對話框(如圖4.4所示)。工作人員輸入圖書的條形碼,點擊提交按鈕,如果條形碼輸入正確,會顯示借閱信息核對對話框,確認信息無誤后,點擊確定,還書成功。圖4.4還書界面主要代碼如下:<!--#includefile="conn.asp"--><!--#includefile="checkuser.asp"--><%'圖書歸還處理iftrim(request.querystring("action"))="huanshu"thenlogid=request.form("logid")tiaoxingma=request.form("tiaoxingma")Setrs=conn.execute("updatebooklogsetleixing=falsewhereid="&logid&"")setrs=conn.execute("updateebooksetyijie=yijie-1wheretiaoxingma='"&tiaoxingma&"'")response.Write"<script>"response.Write"alert('還書成功!');"response.write"window.location.href='huanshu.asp';"response.write"</script>"response.endendiftiaoxingma=request.form("tiaoxingma")setrs=server.CreateObject("adodb.recordset")sql="select*from[ebook]wheretiaoxingma='"&tiaoxingma&"'"rs.opensql,conn,1,1ifrs.eofthenresponse.Write"<script>"response.Write"alert('該書暫未加入系統(tǒng),請先加入系統(tǒng)!');"response.write"window.location.href='huanshu.asp';"response.write"</script>"rs.closesetrs=nothingresponse.endelseifrs("yijie")=0thenresponse.Write"<script>"response.Write"alert('該書沒有借出!');"response.write"window.location.href='huanshu.asp';"response.write"</script>"rs.closesetrs=nothingresponse.endendifbookid=rs("id")logid=rs("logid")shuming=rs("shuming")rs.closesetrs=nothingendif'獲取借閱信息Setrs=conn.execute("select*frombooklogwhereid="&logid&"")ifrs("leixing")=falsethenresponse.Write"<script>"response.Write"alert('該書已經(jīng)歸還!請聯(lián)系管理員');"response.write"window.location.href='huanshu.asp';"response.write"</script>"response.endendif%>4.3.3新書入庫把新購買圖書添加到系統(tǒng)中,就要點擊新書入庫按鈕,顯示新書入庫界面(如圖4.6),首先要輸入圖書的條形碼,按下一步按鈕,進入圖書信息錄入界面(如圖4.7),在圖書信息添加界面,工作人員就可以錄入書籍信息,其中條形碼和書籍名稱是必須填寫內(nèi)容。錄完信息之后,點擊添加完成新書入庫功能。圖4.6新書入庫界面圖4.7圖書信息錄入界面主要代碼如下:<!--#includefile="conn.asp"--><!--#includefile="checkuser.asp"--><%action=request.querystring("action")step=request.QueryString("step")ifstep=1thentiaoxingma=trim(request.form("tiaoxingma"))setrs=server.createobject("adodb.recordset")sql="select*fromebookwheretiaoxingma='"&tiaoxingma&"'"rs.opensql,conn,1,1ifnotrs.eofthenresponse.write"<script>"response.write"alert('該條形碼書籍已經(jīng)存在!\n\n請重新正確輸入!');"response.write"history.back(-1);"response.write"</script>"rs.closesetrs=nothing EndIF endififaction="add"thentiaoxingma=request.form("tiaoxingma")shuming=request.form("shuming")folderid=request.form("folderid")zhubian=request.form("zhubian")chubanshe=request.form("chubanshe")ceshu=request.form("ceshu")dingjia=request.form("dingjia")jianjie=request.form("jianjie")beizhu=request.form("beizhu")shijian=request.form("shijian")bookpic=request.form("bookpic")setrs=server.createobject("adodb.recordset")sql="select*fromebookwheretiaoxingma='"&tiaoxingma&"'"rs.opensql,conn,1,3ifnotrs.eofthenresponse.write"<script>"response.write"alert('該條形碼書籍已經(jīng)存在!\n\n請重新正確輸入!');"response.write"history.back(-1);"response.write"</script>"rs.closesetrs=nothingelsers.addnewrs("tiaoxingma")=tiaoxingmars("shuming")=shumingrs("folderid")=folderidrs("zhubian")=zhubianrs("chubanshe")=chubanshers("ceshu")=ceshurs("dingjia")=dingjiars("jianjie")=jianjiers("shijian")=shijianrs("beizhu")=beizhurs("bookpic")=bookpicrs("userid")=session("userid")rs.updaters.closesetrs=nothingresponse.write"<script>"response.write"alert('添加書籍成功!\n\n圖書管理系統(tǒng)!');"response.write"window.location.href='bookin.asp'"response.write"</script>"endifendif%><scriptlanguage="JavaScript"type="text/javascript">functiontiaoxingma(){document.form2.tiaoxingma.focus();document.form2.tiaoxingma.select();}functioncheckit(){if(event.keyCode=="13"){document.form1.folderid.focus(); document.form1.folderid.select();}}functioncheckform(){if(document.form1.tiaoxingma.value==""){alert('書籍條形碼不能為空!');document.form1.tiaoxingma.focus();document.form1.tiaoxingma.select();returnfalse;}if(document.form1.shuming.value==""){alert('書籍名稱不能為空!');document.form1.shuming.focus();document.form1.shuming.select();returnfalse;}document.form1.submit();}</script>4.3.4圖書管理查詢主界面點擊圖書管理,進入圖書管理查詢界面,輸入正確的條形碼,按查找圖書按鈕進入圖書修改界面,在圖書修改界面就可以對圖書的條形碼、書籍類別、書籍名稱、主編/作者、出版社、冊數(shù)、定價、書籍簡介、書籍狀況、購置時間、縮略圖等信息進行修改。在這些信息當中,條形碼和書籍名稱不能為空。通過這個界面我們可以查閱國書的一些信息。在圖書管理查詢界面.如果用戶不輸入條形碼,就按查找圖書按鈕,系統(tǒng)會提示“書籍條形碼不能為空”。如果輸入的條形碼不在數(shù)據(jù)庫中,系統(tǒng)會提示“該書末加入系統(tǒng)”。主要代碼如下:<!--#includefile="conn.asp"--><!--#includefile="checkuser.asp"--><%action=request.querystring("action")ifaction="edit"thenbookid=cint(request.Form("bookid"))tiaoxingma=trim(request.form("tiaoxingma"))shuming=request.form("shuming")folderid=request.form("folderid")zhubian=request.form("zhubian")chubanshe=request.form("chubanshe")ceshu=request.form("ceshu")dingjia=request.form("dingjia")jianjie=request.form("jianjie")beizhu=request.form("beizhu")shijian=request.form("shijian")bookpic=request.form("bookpic")setrs=server.createobject("adodb.recordset")sql="select*fromebookwhereid="&bookid&""rs.opensql,conn,1,3rs("tiaoxingma")=tiaoxingmars("shuming")=shumingrs("folderid")=folderidrs("zhubian")=zhubianrs("chubanshe")=chubanshers("ceshu")=ceshurs("dingjia")=dingjiars("jianjie")=jianjiers("shijian")=shijianrs("beizhu")=beizhurs("bookpic")=bookpicrs.updaters.closesetrs=nothingresponse.write"<script>"response.write"alert('修改書籍成功!\n\n圖書管理系統(tǒng)!');"response.write"window.location.href='bookedit.asp?tiaoxingma="&tiaoxingma&"'"response.write"</script>"else%><scriptlanguage="JavaScript"type="text/javascript">functiontiaoxingma(){document.form1.tiaoxingma.focus();document.form1.tiaoxingma.select();}functioncheckit(){if(event.keyCode=="13"){document.form1.folderid.focus(); document.form1.folderid.select();}}functioncheckform(){if(document.form1.tiaoxingma.value==""){alert('書籍條形碼不能為空!');document.form1.tiaoxingma.focus();document.form1.tiaoxingma.select();returnfalse;}if(document.form1.shuming.value==""){alert('書籍名稱不能為空!');document.form1.shuming.focus();document.form1.shuming.select();returnfalse;}document.form1.submit();}</script>4.3.5分類管理本圖書管理系統(tǒng)是以條形碼為索引進行圖書借閱、歸還、新書入庫和圖書管理。使用條形碼使這些工作變得非常容易,但是圖書管理人員怎么給借閱者查閱他們想要看的目標圖書呢?圖書管理人員不會記住每個條形碼所對應的書籍,為了實現(xiàn)這一功能,本系統(tǒng)增加了分類管理這個模塊,在這個模塊里,圖書館工作人員可以修改、刪除和增加圖書的分類名稱。分類管理頁面做好之后就會鏈接到圖書管理系統(tǒng)的主界面,通過點擊不同分類名稱,就可以進入該分類所包含的圖書界面,這個界面會顯示圖書的詳細信息,從而完成圖書的查詢功能。主要代碼如下:<scripttype="text/javascript">functioncheckadd(){if(document.form1.foldername.value==""){alert('分類名稱不能為空');document.form1.foldername.select();document.form1.foldername.focus();returnfalse;}}</script><%Dimaction,idaction=trim(request.QueryString("action"))selectcaseactioncase"add"foldername=cstr(request.Form("foldername"))Setrs=server.CreateObject("adodb.recordset")sql="select*fromfolder"rs.opensql,conn,1,3rs.addnewrs("foldername")=foldernamers("folderparentid")=0rs.updaters.closesetrs=nothingresponse.Write"<script>alert('添加分類成功!');window.location.href='foldermanage.asp';</script>"case"editfolder"%><%case"edit"id=cint(request.querystring("id"))foldername=cstr(request.Form("foldername"))Setrs=server.CreateObject("adodb.recordset")sql="select*fromfolderwherefolderid="&idrs.opensql,conn,1,3rs("foldername")=foldernamers.updaters.closesetrs=nothingresponse.Write"<script>alert('修改分類成功!');window.location.href='foldermanage.asp';</script>"case"del"id=cint(request.QueryString("id"))conn.execute("deletefromfolderwherefolderid="&id)conn.execute("deleteFromebookwherefolderid="&id)response.Write"<script>alert('刪除分類成功!');window.location.href='foldermanage.asp';</script>"caseelse%>4.4圖書館管理人員功能模塊圖書館管理人員除了具有圖書館工作人員一切權限,還具有添加和刪除用戶的功能。主要代碼如下:<%ifsession("isadmin")<>"admin"thenresponse.Write"<script>alert('對不起,你不是管理員!\n\n圖書管理系統(tǒng)');window.history.go(-1);</script>"endif%><!--#includefile="checkuser.asp"--><!--#includefile="conn.asp"--><!--#includefile="md5.asp"--><scripttype="text/javascript">functioncheckadd(){if(document.form1.username.value==""){alert('用戶名不能為空');document.form1.username.select();document.form1.username.focus();returnfalse;}}</script><%Dimaction,idaction=trim(request.QueryString("action"))selectcaseactioncase"add"username=trim(request.Form("username"))password=md5(request.Form("password"),16)Setrs=server.CreateObject("adodb.recordset")sql="select*frommanager"rs.opensql,conn,1,3rs.addnewrs("userid")=usernamers("password")=passwordrs.updaters.closesetrs=nothing'setrs=conn.execute("insertintomanager(userid,password)values("&username&","&password&")")response.Write"<script>alert('添加用戶成功!');window.location.href='usermanage.asp';</script>"case"edituser"%><%case"edit"id=cint(request.querystring("id"))password=md5(request.Form("password"),16)Setrs=server.CreateObject("adodb.recordset")sql="select*frommanagerwhereid="&idrs.opensql,conn,1,3rs("password")=passwordrs.updaters.closesetrs=nothing'conn.execute("updatemanage

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論