版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGE20第一学期校选修课《动态网页欣赏与设计》论文动态网页欣赏与设计学生姓名学号所属学院专业班级授课教师教师职称动态网页欣赏与设计随着互联网技术的快速发展,互联网提供的服务也越来越得到更多人们的认可,特别是WWW服务,它是目前互联网上发展最快的服务。WWW(WorldWideWeb)中文译为环球信息网(或万维网),简称WEB,WWW是一种基于超文本技术的网络资源服务,WEB上的信息是由彼此关联的文档组成的,这些文档称为主页或页面,它是一种超文本(Hypertext)信息。早期的网页主要是静态的,后来由于有了CGI、NSAPI、ISAPI、WSAPI、IDC、ASP、JSP、DHTML、PHP、ASP.NET等技术的发展,使得WEB页面可以方便地传播动态信息。目前,比较流行的有ASP、PHP和JSP程序设计语言。从总的方面来说,ASP、PHP和JSP基本上都是把脚本语言嵌入HTML文档中,它们最主要的优点是:ASP学习简单,使用方便;PHP软件免费,运行成本低;JSP多平台支持,转换方便。ASP全称ActiveServerPages,是微软推出的用以取代CGI的动态服务器网页技术。微软更早曾推出IDC技术,专门用于和数据库连接,IDC虽然也简单易学,但是因为太简单了,很多功能都不能实现,于是微软又推出了仍然简单易学,但功能更强大的ASP。由于ASP简单易学,又有微软的强大支持,所以目前ASP使用非常广泛,很多大型站点都是用ASP开发的。ASP目前可以在WindowsNT、Windows2000、WindowsXP上运行,在Windows98上装上个人WEB服务器PWS4.0后也可以运行,它对客户端没有任何特殊的要求,只要有一个普通的浏览器就行。ASP文件就是在普通的HTML文件中嵌入VbScript或JavaScript脚本语言,当客户请求一个ASP文件时,服务器就把该文件解释成标准的HTML文件发过去。在服务器端运行的好处:第一、可以不受客户端浏览器的限制;第二、可以很方便地和服务器交换数据。ASP提供了几个内部对象和内部组件,利用它们可以很方便地实现表单上传、存取数据库等功能,除此之外,还可以使用第三方提供的专用组件解决如发送E_mail,文件上传等功能,如果还有特殊的需要,可以利用VC或VB开发自己的组件,因此可以说ASP几乎可以实现任何功能。现就自己在使用ASP开发动态网页的过程中遇到的一些问题谈谈自己的看法。一、开发工具的选择欲善其事,必先利其器。选择合适的工具对开发可以起到事半功倍的效果。开发ASP文件,最简单的工具就是Windows系统自带的记事本了,除此之外还有Editplus、UlraEdit、Frontpage、Dreamweaver、VisualInterDev等工具。这么多选择,究竟用哪一种好呢?这些工具各有各的特点,也各有各的优点和缺点,由于动态网页涉及网页开发和脚本开发两方面的内容,所以只用哪一种工具很难顺利完成开发工作。既然一种工具很难较好完成任务,那我们就可以考虑根据其优缺点综合利用这些工具,选择两种合适的工具就可以了。工具不需要太多,好用实用是唯一的标准。从脚本开发和界面设计考虑,我个人认为使用Editplus进行脚本开发,使用Dreamweaver进行界面设计是比较好的选择。记事本使用简单,可以完全依靠它完成动态网页的开发,但是它的效率太低,每行代码,每个字母都需要通过键盘输入,在输入过程中难免会出现这样或那样的错误,如果代码较长,那将是一个漫长的过程。在调试过程中,查找由于输入出现的错误又会耗费很多时间和精力。对于初学者来说,如果对界面没有太高的要求,记事本是个不错的选择,并且在输入过程中对每行代码会有一定的感性认识,对程序的层次结构有一个总的了解。记事本不适合设计复杂的网页。Editplus、UlraEdit与记事本相似,只不过比其功能强大一些,它可以自动生成网页的框架,你只需要将脚本语言输进去就可以了,而且它具有结构化程序的特点,并能将ASP脚本语言与HTML语言分颜色显示出来,增强了可读性,它还有自动换行、列数标记等功能。Frontpage、Dreamweaver是可视化的网页开发工具,其功能非常强大,制作网页非常方便,效率很高,而且也集成了ASP功能,可以自动生成一些ASP脚本语言,但其生成的代码较复杂,可读性较差,使用起来不是很方便灵活。VisualInterDev的突出优点是它有一个非常优秀的脚本开发调试环境,可以极其容易地生成VbScript脚本和JavaScript脚本,另外它可以直接与SQLServer数据库连接,方便地操纵数据库,这在其他环境中是比较少有的,与Frontpage、Dreamweaver相比较,VisualInterDev的缺点和记事本、Editplus、UlraEdit一样,不能非常方便地进行界面设计。综上所述,我们可以先使用Dreamweaver来进行界面设计,然后用Editplus来完成动态网页的脚本开发,综合利用各自的优点,发挥它们的特色,为我们的开发服务。脚本和界面的关系是内容与形式的关系,好的内容需要好的形式来推广,好的形式便于好的内容的普及,二者是辩证统一的。所以我们可以先设计好网页的界面,然后再完成网页的动态部分,分步来完成,避免发生混乱。二、数据库的选择对于初学者来说,可以选择Access、Foxpro这样的小型关系数据库进行小型网站的开发,而Sybase、Oracle、Informix、SqlServer适合进行大型数据库的开发,为了能较顺利地开发出ASP程序,熟悉其功能,使用小型的关系型数据库就可以了。等到ASP脚本语言使用非常熟练以后,再选择大型数据库进行大型网站的开发,这种过渡是非常容易的。三、数据结构的确立对于ASP来说,数据库的应用是非常重要的一部分。刚开始,不用对数据库的结构考虑太多,主要任务应该集中在对数据库的操作上,待查询、添加、删除、修改、分页等操作熟练掌握后,要进行大型系统开发时再考虑数据库的结构,一个好的系统必须有一个好的数据库结构来支撑,现在的数据库都是关系型的数据库,确定各个数据的关系至关重要,要学会建立数据模型,对数据进行分析,剔除数据冗余,使各个数据之间的关系合理,这是非常关键的,如果数据库的结构不合理,将会给开发带来很多的问题。所以一定要好好研究一下数据库的结构,学会建立数据模型。四、数据库的连接要对数据库进行操作,首先要连接数据库,这就要用到Connection对象,具体连接方法有两种。1、利用数据源的连接方法。此方法需要通过“ODBC数据源管理器”设置数据源。2、不用数据源的连接方法使用数据源的连接方式尽管简单,但是需要在服务器端设置数据源。如果希望把程序从一个服务器移植到另一个服务器上,还需要在另一台服务器上设置数据源,比较麻烦。我们可以直接通过程序代码书写连接语句,利用OLEDB的方法直接连接数据库。五、运行环境的选择ASP文件是在服务器端运行的。ASP的运行环境一般可以选择:(1)Windows2000+IIS5.0(2)WindowsXP+IIS5.0(家庭版不支持)(3)Windows98+PWS4.0(4)WindowsNT4.0+WindowsNTOptionPack由于IIS是与Windows2000Server集成的Web服务器,当Windows2000Server安装完毕,IIS也就安装上了,直接就可以使用IIS提供的全Internet服务了,而Windows2000Professional、WindowsXPProfessional、Windows98、WindowsNT4.0等操作系统都需要另外安装。比较而言Windows2000Server或Windows2000AdvanceServer更方便,更稳定,更实用,是开发ASP最好的选择。六、开发的基本流程1、HTML静态页面设计动态页面是将程序镶嵌在HTML静态页面中,所以必须在添加程序之前完成静态页面的设计,这样在编写和调试程序时才可以有的放矢,使开发过程更顺利。2、编写Web应用程序根据Web应用程序的需求,构建应用程序中的数据结构,这是在整个程序编写过成中非常重要的环节,只有数据结构合理才能使程序的编写省时省力。3、调试应用程序在编好的程序中总会出现这样或那样的错误,这就需要用户运行Web应用程序,从浏览器中找出其中的错误,然后再对应用程序进行修改,最终改正错误,普通的HTML页面不用服务器就可以显示,而动态的页面必须有服务器的编译才能显示。七、程序开发的心态由于动态网页开发涉及的面非常广,需要学习的内容非常多,一定要冷静,不要急躁,用平常心对待在开发过程中出现的任何问题,始终保持愉快的心情去做愉快的事情。遇到困难时不要轻易放弃,任何时候都不要对自己失去信心。不要急于求成,不要求大求全,要循序渐进,尽量避免少走弯路,多和有经验的开发者进行交流,积极吸取他们的成功经验。刚开始的时候,最好先从小的系统开始做起,最好可以将小的系统应用到实际应用当中去,麻雀虽小,但五脏俱全,通过小系统的开发可以帮助你积累开发经验。好的界面等于成功了一大半,所以系统的界面设计至关重要,如果你对设计界面没有信心,不妨先到internet上多转转,互联网上有很多简洁、美观、大方的网页,可以借鉴学习,界面不需要过分的华丽复杂,以实用为主,一定要对自己充满信心。当然,在界面的设计上不要花费太多的时间,不要一直停留在静态网页的制作上,适可而止,网页的动态部分可以使你的网页功能更加强大,更加实用。八、结束语实践出真知,只有不断的实践才有可能取得不断的进步,IdoIcan,,相信自己,一切都不难,只要用心,只要努力就一定会成功。课程设计名称图书管理系统目录TOC\o"2-3"\h\z\t"标题1,1"1、引言 51.1项目开发背景 51.2设计思想 52、系统分析 92.1项目背景 92.2任务概述 92.3数据描述 92.3.1静态数据 92.3.2数据字典 93、系统设计 113.1系统功能描述 113.2模块图 114、系统实施 124.1查询 124.1.1图书信息查询 124.1.2借阅信息查询 144.1.3显示所有图书信息 154.2管理员登录 154.2.1功能 154.2.2程序构成及代码说明 164.3图书借阅管理 164.3.1图书借阅 164.3.2图书归还 174.3.3图书续借 184.4会员管理 194.4.1添加会员 194.4.2删除会员 204.4.3修改会员信息 204.5图书信息管理 214.5.1添加图书信息 214.5.2删除图书信息 224.5.3添加图书类别 224.5.4删除图书类别 23参考文献 27附录:(代码) 28中文摘要【摘要】随着新世纪的到来,科学技术的突飞猛进,知识经济的日益发展,许多图书管理系统已经慢慢走向了老化。图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有很多的图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理。针对这种情况我个人制作了一个简单的图书管理系统网站。本网站使用Frontpage制作页面,用Asp语言做连接数据库的程序,使用Access制作系统的数据库,做出了这个具有图书查询、图书借阅、归还、续借、会员管理以及图书信息管理等功能的小型的网站。我在文章中论述了整个网站的开发过程,网站的结构及网站开发的基本原理和方法。本文详细阐述了系统功能、需求分析、概要设计、详细设计、系统实现以及系统维护等软件开发过程。我力求将所学到的知识在网站开发中得以全面的应用,并使网站在实际的操作中能按照设计的要求安全有效正确的运行。本网站界面友好,操作简单,比较实用。关键字:accessASPfrontpage脚本语言AbstractAlongwiththenewcenturyarrival,scienceandtechnologyprogressingbyleapsandbounds,knowledgeeconomyflourishingmoreandmoredaily,manybooksmanagementsystemalreadyslowlymovedtowardstheaging.Thelibrarytookonekindofinformationresourcethecollectionanddistributioncenter,thebooksandtheuserborrowthematerialtobemany,containstheverymanyinformationdatathemanagement,nowadays,hasverymanylibrariesallisinitiallystartstouse,evennotyetusesthecomputertocarryontheinformationmanagement.BythisconditionImadethissimplelibrarymanagesystemstation.ThewebstationisusingFrontpagemadethewebpage,usingthelanguageofActiveServerPagelinkedthedatabase,andusingAccessasthebackgrounddatabase,madethisminiwebstationwhichhasthefunctionofbooksearchbookborrow,bookback,bookreborrow,readermanagebookmessagemanageandsoon.Intermsofthewebstationasbackground,Idiscussedthewholedevelopingprocessofdevelopingwebstation、thestructureofwebstationandthebasicprincipleandmethod.Thisarticleparticularlydiscussedthedevelopingprocessofsystemanalyse、demandanalyse、summaryanalyse、particularanalyse、systemimplemtandsystemmaintenance.Itryhardtoapplymasteredknowledgeinthewebdeveloping,makewebstationsafelycorrectictyrunninginthepracticelyoperating.Thiswebstationhasfrindlyinterface.Itiseasytooperate.Andhasgoodpracticability.Keyword:accessASPfrontpagescript1、引言1.1项目开发背景
近年来,随着计算机技术的发展和互联网时代的到来,我们已经进入了信息时代,也有人称为数字化时代,在这数字化的时代里,图书事业的发展就成为精神文明进步的一个动力。在迈入二十一世纪的今天,对图书馆的管理显得极其重要,合理地管理不但反映一个国家的科技水平,而且影响人们对知识掌握的速度和质量。在知识经济时代到来的今天,用计算机控制图书馆的工作由自动化系统运行而完成。这不仅节省了人力,还提高了工作效率和服务质量,而且还加速了图书的流通。计算机技术是现代技术的一部分,图书自动化也只是图书馆现代化的一部分,它们之间是部分和整体的关系,但由于计算机技术是信息技术的心脏,现代社会的骄子,信息社会的科技主角,所以在图书馆现代技术中,计算机技术处于核心地位,它对于其他现代化设备起控制,连接和转换的作用,而图书馆自动化是图书馆现代化的核心和主导部分。图书的计算机管理系统能提高图书馆本身管理水平,能代替工作人员进行图书资料的某些加工处理,把工作人员从繁重的手工劳动,重复劳动中解放出来。总之,建立图书馆的计算机自动化管理系统,不但可以大大提高图书馆图书流通率,而且推动了社会文化生活的进步。1.2设计思想通过建立图书馆的计算机自动化管理系统,提高图书馆本身管理水平,能代替工作人员进行图书资料的某些加工处理,提高工作效率。2、系统分析2.1项目背景该网站是一个实用性网站,能提高图书馆本身管理水平,能代替工作人员进行图书资料的某些加工处理,把工作人员从繁重的手工劳动,重复劳动中解放出来。2.2任务概述图书管理系统实现以下功能:1.图书查询2.图书借阅管理3.会员管理4.图书管理5.显示所有图书信息2.3数据描述2.3.1静态数据本设计采用access数据库建表,数据库为2flybook.mdb,共有五个表,说明如下:表2.1表名说明book存放图书信息booktype存放图书类型信息borrow存放借阅信息manager存放管理员信息reader存放会员信息2.3.2数据字典book:表2.2字段名数据类型说明id自动编号图书序号bookno文本图书编号bookname文本图书名字booktype文本图书类型author文本图书作者publishing文本图书出版社bookmoney数字图书价格booktxt备注备注booknum数字图书数量(2)booktype:表2.3字段名数据类型说明bookid自动编号图书类型序号type文本图书类型(3)borrow:表2.4字段名数据类型说明borrowid自动编号借阅编号bookno文本图书编号readerid文本会员编号borrowdate日期/时间借书日期manager文本管理员姓名(4)manager:表2.5字段名数据类型说明id自动编号管理员序号name文本管理员姓名pw文本管理员登陆密码(5)reader:表2.6字段名数据类型说明id自动编号会员序号readerid文本会员编号readername文本会员姓名rtel文本会员电话raddress文本会员地址rtxt备注会员备注3、系统设计3.1系统功能描述本网站功能主要有:图书查询:根据关键字查询在库图书图书借阅管理:管理员可进行图书借阅、归还以及续借操作,并可查询已借出的书籍及借书人的信息会员管理:管理员可对会员进行添加、修改、删除的操作图书管理:管理员可对图书信息进行添加、删除,也可对图书类别进行添加和删除显示所有图书信息:用户跟管理员都可对所有图书信息进行查阅3.2模块图主页面主页面查询登录图书信息查询借阅信息查询显示所有图书信息图书借阅管理会员管理图书信息管理图书借阅图书归还图书续借添加会员删除会员修改会员添加图书删除图书添加图书类别删除图书类别选择操作一般用户管理员 图3.14、系统实施本网站共分查询、管理员登陆、图书借阅管理、会员管理、图书信息管理书几大模块,其主界面为:图4.1具体功能及其它连接页面如下:4.1查询4.1.1图书信息查询图4.21.功能任何人员都可对图书进行查询,可按图书编号、按书籍名、按分类、按出版社、按作者进行准确查询或模糊查询,通过查询可了解图书的基本信息,若会员对这本书感兴趣就可以到图书管理员那里办理借阅。2.程序构成及代码说明实现思想:查询时,查询人员可以不输入任何信息进行不限制查询,但要判断查询者是否输入错误信息,要是数据库中没有相符纪录,就输出“没有您要查询的图书”,有就从相关位置输出信息。设计思想:查询由两个程序实现,select.asp,select_book.asp。select-book.asp为用户输入页面,其中用到了一个表单,文本框用来接受用户输入的书的编号、书名、书类、出版社、作者,根据选择情况赋给变量SQL查询条件。两个按钮用来确定查询和重新输入,属性分别为submit和reset处理此表单的action为select1.asp。select.asp是通过表单调用的页面,首先用request对象获取表单中的编号信息,然后连接数据库。在使用ADOConnection对象之前,使用Server.CreateObject方法创建该对象的实例。在ASP中访问Access数据库时,在连接字符串中包含DRIVER和DBQ两个参数,分别指定所用的数据库驱动程序和要连接的Access数据库文件的路径:Setconn=Server.CreateObject("ADODB.Connection")
conn.Open"driver={MicrosoftAccessDriver(*.mdb)};dbq="&Server.MapPath("2flybook.mdb")创建记录集时,通过调用Connectiond对象的Execute方法,以SQL命令从2flybook数据库中的book表中检索图书信息并返回一个记录集,用Recordset对象变量来访问该记录集内的数据:Setrs=Server.CreateObject("adobd.recordset")
sql="select*frombook"Setrs=conn.Execute(sql)在数据集不为空的情况下,将数据集中的记录按页数逐条显示出来。例如我们根据图书编号进行查询,数据库中有图书信息表book,首先用request对象获取表单中的编号信息,然后连接数据库,再次以取得的编号信息进行查询,语句为sql="select*frombookwhere"&""&sql,要是查到相符纪录,就把它输出到页面中的相关位置。其他的查询实现与此类似,简单说明如下:例如按书名查询:语句为bookno=trim(request("booknname")),然后连接数据库,再次以取得的编号信息进行查询,语句为sql="select*frombookwhere"&""&sql,要是查到相符纪录,就把它输出到页面中的相关位置。输出语句为<%=rs("bookno")%>。其他的查询实现与此类似。4.1.2借阅信息查询图4.31.功能任何人都可对图书借阅信息进行查询,查询者输入会员编号,点提交就能显示该会员所有借阅信息。2.程序构成及代码说明实现思想:查询者输入会员号,点提交查询borrow表中对应的会员号的信息。1.提取表单中输入的会员号2.连接数据库同上3.赋值SQL语句sql="select*fromborrow,bookwherereaderid='"&bookbh&"'andborrow.bookno=book.bookno"4.执行查询把结果赋给rs结果集。5.利用表格把rs结果集显示出来,实现查询。4.1.3显示所有图书信息图4.41.功能任何人都可使用该功能,一点该连接就会显示所有图书信息。2.程序构成及代码说明实现思想:同借阅信息查询,只是不同的是查询book表中的信息。4.2管理员登录图功能当管理员进行图书借阅管理和会员管理以及图书管理时,要先进行登录操作,管理员输入姓名和密码,点登录就可进入管理员界面,便可进行各项操作了。4.2.2程序构成及代码说明实现思想:登陆由两个程序实现,login.htm,login.asp。login.htm为用户输入页面,其中用到了一个表单,文本框用来接受用户输入的管理员姓名及密码,连接数据库同上,赋值语句:sql="select*frommanagerwherename='"&name&"'andpw='"&passwor&"'"然后执行查询把结果赋给rs结果集。要是输入为空,就直接输出“用户名或密码不能为空”(response.write"<scriptlanguage=JavaScript>"&chr(13)&"alert('用户名或密码不能为空;');"&"history.back()"&"</script>"),然后要是存在相符纪录则保留用户名(session("name")=name),再转到选择操作页面(Response.Redirect"index1.htm")。否则输出登陆失败信息:response.write"<scriptlanguage=JavaScript>"&chr(13)&"alert('登陆失败');"&"history.back()"&"</script>"。登录成功后,进入index1.asp页面,管理员便可进行各项操作了。4.3图书借阅管理4.3.1图书借阅图4.61.功能管理员点图书借阅管理,进入会员借书界面,输入会员编号和图书编号,管理员姓名将在文本框中自动显示,点击提交,将会显示借书成功,并显示图书编号、书籍名称、书籍分类、借阅者、价格、操作员等信息。2.程序构成及代码说明实现思想:借阅图书的实现,本模块由两个程序构成,borrow_in.asp是前台程序,borrowed.asp是后台处理程序,borrow_in.asp要求用户输入书号和会员号,它的后台处理action是borrowed.asp,borrowed.asp取得书号和会员号后,先判断是否还有可以借的书(连接数据库以输入书号为查询条件查询表book中的该书的number是否大于1),要是有的话就在borrowed.asp中显示书号、书名、会员号、会员名,以供确认。(会员号和会员名是以输入的会员号为查询条件从表reader中查出并显示在页面上,书号和书名是以输入的书号为查询条件从表book中查出并显示,经手人是从登录页面中取得的session在这个页面显示)没有的话就显示出错信息:“库存不够”后台处理程序也在borrowed.asp,borrowed.asp用来修改表book的这本书的number值(将number值减1),然后添加图书借阅信息到表borrow中,(添加书号、会员号、借书日期、经手人,借书日期是取得系统日期添到表borrow中),最后在页面输出“借阅成功”并以表格的形式显示书名、借阅人、作者、出版社、价格、经手人。(书名、作者、价格、出版社、借阅人、经手人是以session形式保存在上一页面中,在这个页面中使用).4.3.2图书归还图4.71.功能管理员点图书还书管理,进入会员还书界面,输入书籍编号,点提交显示会员还书页面,显示该书籍编号对应的几个借阅者编号,由管理员进行选择要还书的借阅者编号,点提交,显示借书信息,如会员编号、会员名称、书籍编号、书籍名称以及借书时间,点击还书,显示还书成功的页面,并显示图书编号、书籍名称、书籍分类、还书者、操作员。2.程序构成及代码说明实现思想:本模块由四个程序构成return_in.asp,return_select.asp,return1.asp,return2.asp,return_in.asp要求用户输入书号,它的后台处理action是return_select.asp,return_select.asp取得书号后,先判断有没有该书借出记录,有的话就从数据库的borrow表里找出该书号和借阅该书号bookbh的会员编号readerid并显示出来,点击提交后其action为return1.asp,在return1.asp页面中显示借书信息,先从borrow表中取得该书号,以及与该书号对应的会员编号并赋给变量rid,分别从后台数据库的reader和book表中取得readerid='"&rid&"'"的会员编号以及对应的会员名和bookno='"&bno&"'"的图书编号以及对应的图书名,并从borrow表里取得该书号和会员号所对应的借书时间,将以上内容显示出来,点击还书,其action为return2.asp,显示还书成功,并显示对应的并显示图书编号、书籍名称、书籍分类、还书者、操作员。后台数据库的操作为从后台数据库的book表中取得bookno='"&bookbh&"'"的图书编号对应的书的数量并加1。4.3.3图书续借图4.81.功能管理员点图书续借管理,进入图书续借界面,输入书籍编号,点提交显示图书续借页面,显示该书籍编号对应的几个借阅者编号,由管理员进行选择要续借的借阅者编号,点提交,显示借书信息,如会员编号、会员名称、书籍编号、书籍名称以及借书时间,点击续借,显示续借成功的页面,并显示图书编号、借阅者、续借日期、操作员。2.程序构成及代码说明实现思想:本模块由四个程序构成rborrow_in.asp,return_select1.asp,reborrow1.asp,reborrow2.asp,rborrow_in.asp要求用户输入书号,它的后台处理action是return_select1.asp,return_select1.asp取得书号后,先判断有没有该书借出记录,有的话就从数据库的borrow表里找出该书号和借阅该书号bookbh的会员编号readerid并显示出来,点击提交后其action为rborrow1.asp,在rborrow1.asp页面中显示借书信息,先从borrow表中取得该书号,以及与该书号对应的会员编号并赋给变量rid,分别从后台数据库的reader和book表中取得readerid='"&rid&"'"的会员编号以及对应的会员名和bookno='"&bno&"'"的图书编号以及对应的图书名,并从borrow表里取得该书号和会员号所对应的借书时间,将以上内容显示出来,点击续借,其action为rborrow2.asp,显示续借成功,并显示对应的并显示图书编号、借阅者编号、续借日期、操作员。后台数据库的操作为从系统的日期中取得date令rs("borrowdate")=date,然后从库中取出相应的各项信息显示出来。4.4会员管理4.4.1添加会员图4.91.功能管理员点击会员添加,显示会员信息添加页面,要添加会员编号、会员名字、会员电话、会员地址、备注信息,点提交,显示添加成功页面,显示读者编号、读者名称、电话号码、读者地址、备注、操作员。2.程序构成及代码说明实现思想:本模块由两个程序构成addreader.asp和add_reader.asp,addreader.asp输入会员信息,表单的action为add_reader.asp,从addreader.asp中获取表单信息并写入数据库的reader表中,语句为:rs.addnewrs("readerid")=nors("readername")=namers("rtel")=telrs("raddress")=addrs("rtxt")=txtrs.update然后显示出来。4.4.2删除会员图4.101.功能管理员点删除会员,进入删除会员界面,输入会员编号点击提交,显示该会员信息然后进行信息删除,显示更新成功。2.程序构成及代码说明实现思想:本模块由两个程序构成deleter.asp和delete_reader.asp,deleter.asp中输入会员编号,action为delete_reader.asp,在数据库中删除该会员,语句为sql="delete*fromreaderwherereaderid='"&rno&"'",然后显示删除成功。4.4.3修改会员信息图4.111.功能管理员点修改会员,进入修改会员界面,输入会员编号点击提交,显示该会员信息然后进行信息修改,点击更新,显示更新成功,并显示更新后的会员信息。2.程序构成及代码说明实现思想:本模块由三个程序构成updater.asp,updater1.asp,updater2.asp。updater.asp中输入会员编号,action为updater1.asp,从数据库中获取会员已有信息赋给变量rs,并显示出来,修改信息后表单action为updater2.asp,从数据库中修改信息,语句为rs("readername")=namers("rtel")=telrs("raddress")=addrs("rtxt")=txtrs.update然后显示更新成功,并显示修改后信息。4.5图书信息管理4.5.1添加图书信息图4.121.功能管理员点击图书添加,显示图书信息添加页面,要添加图书编号、图书类型、书价、出版社、书名、作者名、书籍数量,备注信息。点击提交显示添加成功。2.程序构成及代码说明实现思想:同添加会员信息。4.5.2删除图书信息图4.131.功能管理员点击图书删除,显示图书信息删除页面,输入图书编号点击删除,显示删除成功。2.程序构成及代码说明实现思想:同删除会员信息。4.5.3添加图书类别图4.141.功能管理员点击图书类别添加,显示图书类别添加页面,输入添加类别点击提交,显示添加类别成功。2.程序构成及代码说明实现思想:同添加会员信息。4.5.4删除图书类别图4.151.功能管理员点击图书类别删除,显示图书类别删除页面,选择图书类别点击提交,显示删除成功。2.程序构成及代码说明实现思想:同删除会员信息。参考文献[1]扬皓等编著.ASP步步高[M].第一版.北京:机械工业出版社.2000年11月版.272页[2]廖彬山,高峰霞等编著.ASP动态网站开发教程[M].第一版.北京:清华大学出版社.2000年11月版.272页[3]肖金秀,冯沃辉,施鸿翔,香文斌等编著.ASP3.0动态网页培训教程[M].第一版.北京:冶金工业出版社.2000年8月版。356页[4]张登辉,刘益红编著.ASP编程基础及应用[M].第一版.北京:机械工业出版社.2004年8月版.297页[5]丁贵广,闫允一,孟繁杰编著.ASP及ASPNET编程基础与实例[M].第二版.北京:机械工业出版社.2004年1月版.289页[6]刘小东编著.DreamweaverMX实用教程入门与提高[M].第一版.北京:中国铁道出版社.2003年5月版.388页附录:(代码)读者信息模块代码如下:<!--#includefile="../dbc.asp"--><!--#includefile="../checkadmin.asp"--><%ifRequest("ReaderID")=emptythenresponse.write"读者证条码号不应该为空!"response.endelseReaderID=request("ReaderID")endififRequest("ReaderName")=emptythenresponse.write"读者姓名不应该为空!"response.endelseReaderName=request("ReaderName")endifReaderTel=trim(Request("ReaderTel"))ifRequest("ReaderCerti")="请选择"thenresponse.write"读者证件类型没有选择!"response.endelseReaderCerti=request("ReaderCerti")endififRequest("ReaderCertiNum")=emptythenresponse.write"读者证件号码不应该为空!"response.endelseReaderCertiNum=request("ReaderCertiNum")endififRequest("ReaderClassID")="请选择"thenresponse.write"读者类型您没有选择!"response.endelseReaderClassID=request("ReaderClassID")endifReaderDis=request("ReaderDis")'查询读者证设定年限SetRS=Server.CreateObject("ADODB.Recordset")sql="select*fromreaderclasswhereReaderClassID='"&ReaderClassID&"'"RS.Opensql,DBConnection,3ReaderYear=RS("ReaderDocumentDate")ReaderCardDate=daters.closeReaderCarDue=dateadd("yyyy",ReaderYear,date)AdminName=Session("AdminName")'response.writereaderID&'<br>'&readerID&'<br>'&ReaderName&'<br>'&ReaderTel&'<br>'&readerID&'<br>'&readerID&'<br>'&readerID&'<br>'&readerID&'<br>'&readerID&'<br>'&'response.writeReaderdeposit'response.endSetRS=Server.CreateObject("ADODB.Recordset")sql="select*fromreadercardwhereReaderID='"&ReaderID&"'orReaderCertiNum='"&ReaderCertiNum&"'"RS.Opensql,DBConnection,3ifnotRS.Eofthenresponse.write"您输入的读者证号或证件号码已经存在,您以前办过读者证!"response.endelseSetCmdObj=Server.CreateObject("ADODB.Command")SetCmdObj.ActiveConnection=DBConnectionSQL_Command="Insertintoreadercard(ReaderID,ReaderClassID,ReaderName,ReaderTel,ReaderCerti,ReaderCertiNum,ReaderDis,ReaderCardDate,ReaderCarDue,AdminName)values('"SQL_Command=SQL_Command&ReaderID&"','"&ReaderClassID&"','"&ReaderName&"','"&ReaderTel&"','"&ReaderCerti&"','"&ReaderCertiNum&"','"&ReaderDis&"','"&ReaderCardDate&"','"&ReaderCarDue&"','"&AdminName&"')"CmdObj.CommandText=SQL_CommandCmdObj.ExecuteendifSetRS=Nothing'重设RS物件setDBConnection=NothingResponse.Redirect"dzbz.asp"%>读者信息添加:<!--#includefile="../dbc.asp"--><!--#includefile="../checkadmin.asp"--><head><METAhttp-equiv=Content-Typecontent="text/html;charset=gb2312"><SCRIPTlanguage=javascript>functionre_load(){location.reload();}</SCRIPT><STYLE>.x:link{COLOR:white;TEXT-DECORATION:none}.x:visited{COLOR:white;TEXT-DECORATION:none}.x:active{COLOR:red;TEXT-DECORATION:none}.x:hover{COLOR:red}TR{FONT-SIZE:10pt}TD{FONT-SIZE:10pt}BODY{FONT-SIZE:10pt}A:link{COLOR:black;TEXT-DECORATION:underline}A:visited{COLOR:black;TEXT-DECORATION:underline}A:active{COLOR:black;TEXT-DECORATION:underline}A:hover{COLOR:black;TEXT-DECORATION:underline}</STYLE><stylefprolloverstyle>A:hover{color:#FF0000;text-decoration:none;font-size:10pt}</style></head></form><%setrs=server.CreateObject("adodb.recordset")rs.open"Select*FromreaderclassorderbyReaderClassIDdesc",dbconnection,1,1%><formmethod=postaction=dzbz_add.asp><tablewidth="100%"height="495"border="0"cellpadding="0"cellspacing="1"bgcolor="336699"><tr><tdalign="center"valign="top"bgcolor="#F2F8FF"height="493"><br/><tablewidth="90%"border="0"align="center"cellpadding="0"cellspacing="0"bgcolor="336699"><tr><tdalign="center"valign="middle"><tablewidth="80%"border="0"cellpadding="0"cellspacing="1"bgcolor="#000000"height="388"><trbgcolor="#A4B6D7"><tdheight="28"colspan="2"align="center"bgcolor="#31659C"width="1242"><u><fontcolor="#FFFFFF"size="3">添加办证读者</font></u></td></tr><trbgcolor="#A4B6D7"><tdwidth="20%"height="28"align="center"bgcolor="#A4B6D7"><strong>读者证条码号:</strong></td><tdwidth="80%"height="28"align="left"bgcolor="#F2F8FF"> <inputtype="text"name="ReaderID"size="33"></td></tr><trbgcolor="#A4B6D7"><tdwidth="20%"height="28"align="center"bgcolor="#A4B6D7"><b>读者姓名:</b></td><tdwidth="80%"height="28"align="left"bgcolor="#F2F8FF"><b> <inputtype="text"name="ReaderName"size="33"> </b></td></tr><trbgcolor="#A4B6D7"><tdwidth="20%"height="28"align="center"bgcolor="#A4B6D7"><b>联系电话:</b></td><tdwidth="80%"height="28"align="left"bgcolor="#F2F8FF"><b> <inputtype="text"name="ReaderTel"size="33"> </b></td></tr><trbgcolor="#A4B6D7"><tdwidth="20%"height="28"align="center"bgcolor="#A4B6D7"><b>证件类型:</b></td><tdwidth="80%"height="28"align="left"bgcolor="#F2F8FF"><b> </b><selectsize="1"name="ReaderCerti"><option>请选择</option><option>身份证</option><option>军官证</option><option>驾驶证</option><option>其他有效证件</option></select><b> </b></td></tr><trbgcolor="#A4B6D7"><tdwidth="20%"height="21"align="center"bgcolor="#A4B6D7"><b>证件号码:</b></td><tdwidth="80%"height="21"align="left"bgcolor="#F2F8FF"><b> <inputtype="text"name="ReaderCertiNum"size="33"> </b></td></tr><trbgcolor="#A4B6D7"><tdwidth="20%"height="28"align="center"bgcolor="#A4B6D7"><b>读者类型:</b></td><tdwidth="80%"height="28"align="left"bgcolor="#F2F8FF"> <selectsize="1"name="ReaderClassID"><optionvalue="请选择">请选择</option><%RS.movefirstwhilenotrs.eofresponse.write"<optionvalue="&RS("ReaderClassID")&">"&RS("ReaderClassName")&"</option>"rs.movenextwendrs.close%></select></td></tr><trbgcolor="#A4B6D7"><tdwidth="20%"height="183"align="center"bgcolor="#A4B6D7"><b>读者备注:</b></td><tdwidth="80%"height="183"align="left"bgcolor="#F2F8FF"> <textarearows="11"name="ReaderDis"cols="66"></textarea></td></tr><trbgcolor="#A4B6D7"><tdwidth="20%"height="28"align="center"bgcolor="#A4B6D7"></td><tdwidth="80%"height="28"align="center"bgcolor="#F2F8FF"><palign="left"><inputtype="submit"value="提交"name="B1"></p></td></tr></table></td></tr></table></td></tr></table></form><%setrs=server.CreateObject("adodb.recordset")rs.open"Selecttop1*FromreadercardorderbyReaderIDdesc",dbconnection,1,1ifrs.eofthenresponse.write"暂无读者办证记录"elseReaderID=RS("ReaderID")ReaderClassID=RS("ReaderClassID")ReaderName=RS("ReaderName")ReaderTel=RS("ReaderTel")ReaderCerti=RS("ReaderCerti")ReaderCertiNum=RS("ReaderCertiNum")ReaderDis=RS("ReaderDis")ReaderState=RS("ReaderState")ReaderCardDate=RS("ReaderCardDate")ReaderCarDue=RS("ReaderCarDue")rs.closesetrs=server.CreateObject("adodb.recordset")rs.open"SelectReaderClassNameFromreaderclasswhereReaderClassID="&ReaderClassID,dbconnection,1,1ReaderClassName=RS("readerclassname")%><tablewidth="100%"height="131"border="0"cellpadding="0"cellspacing="1"bgcolor="336699"><tr><tdalign="center"valign="top"bgcolor="#F2F8FF"height="129"><tablewidth="90%"border="0"align="center"cellpadding="0"cellspacing="0"bgcolor="336699"><tr><tdalign="center"valign="middle"><tablewidth="998"border="0"cellpadding="0"cellspacing="1"bgcolor="#000000"height="96"><trbgcolor="#A4B6D7"><tdheight="1"colspan="4"align="center"bgcolor="#31659C"width="992"><u><fontcolor="#FFFFFF"size="3">最新读者办证记录</font></u></td></tr><trbgcolor="#A4B6D7"><tdwidth="200"height="1"align="center"bgcolor="#A4B6D7"><strong>读者证条码号:</strong></td><tdwidth="287"height="1"align="left"bgcolor="#F2F8FF"><%=ReaderID%></td><tdwidth="240"height="1"align="left"bgcolor="#F2F8FF"><b>读者类型:</b></td><tdwidth="253"height="1"align="left"bgcolor="#F2F8FF"><%=ReaderClassName%></td></tr><trbgcolor="#A4B6D7"><tdwidth="200"height="1"align="center"bgcolor="#A4B6D7"><b>读者姓名:</b></td><tdwidth="287"height="1"align="left"bgcolor="#F2F8FF"><b><%=ReaderName%></b></td><tdwidth="240"height="1"align="left"bgcolor="#F2F8FF"><b>联系电话:</b></td><tdwidth="253"height="1"align="left"bgcolor="#F2F8FF"><%=ReaderTel%></td></tr><trbgcolor="#A4B6D7"><tdwidth="200"height="5"align="center"bgcolor="#A4B6D7"><b>证件类型:</b></td><tdwidth="287"height="5"align="left"bgcolor="#F2F8FF"><b><%=ReaderCerti%></b></td><tdwidth="240"height="5"align="left"bgcolor="#F2F8FF"><b>证件号码:</b></td><tdwidth="253"hei
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 半年工作总结模板
- DB2201T 62-2024 肉牛运输应激综合征防治技术规范
- 职业导论-房地产经纪人《职业导论》押题密卷1
- 房地产经纪操作实务-《房地产经纪操作实务》押题密卷1
- 人资年度工作总结模板
- 农学硕士答辩指南模板
- 年度目标达成总结模板
- 人教版四年级数学上册寒假作业(六)(含答案)
- 河南省郑州市2024-2025学年高二上学期期末考试 生物(含答案)
- 二零二五年食堂厨具定制设计与安装合同2篇
- 提优精练08-2023-2024学年九年级英语上学期完形填空与阅读理解提优精练(原卷版)
- DB4511T 0002-2023 瓶装液化石油气充装、配送安全管理规范
- 企业内部客供物料管理办法
- 妇科临床葡萄胎课件
- 三基三严练习题库与答案
- 传媒行业突发事件应急预案
- 债务抵租金协议书范文范本
- 山东省潍坊市2023-2024学年高二下学期期末考试 历史 含解析
- 中医诊疗规范
- 第14课《叶圣陶先生二三事》导学案 统编版语文七年级下册
- 北师大版八年级上册数学期中综合测试卷(含答案解析)
评论
0/150
提交评论