[优秀毕业论文]图书借阅和信息管理系统设计

上传人:1777****777 文档编号:39790905 上传时间:2021-11-12 格式:DOC 页数:41 大小:1,010.56KB
返回 下载 相关 举报
[优秀毕业论文]图书借阅和信息管理系统设计_第1页
第1页 / 共41页
[优秀毕业论文]图书借阅和信息管理系统设计_第2页
第2页 / 共41页
[优秀毕业论文]图书借阅和信息管理系统设计_第3页
第3页 / 共41页
点击查看更多>>
资源描述
学士学位论文第1章 绪论1.1 课题开发背景管理信息系统(Management Information System),在强调管理,强调信息的现代社会中它变得越来越普及f。MIS是一门新的学科,它是OA(办公自动化系统)的一个分支阶段。跨越了若干个领域,比如管理科学、系统科学,运筹学、统计学以及计算机科学。在这些学科的基础上,形成信息收集和加工的方法,从而形成一个纵横交织的系统。本课题就是信息管理系统的一个具体实例。它为图书馆图书和学生接借还信息管理提供了一种高效的操作方式。1.2 课题研究目的与意义该项目是以SQL Server 2005数据库和C# 编程语言实现的,其功能在系统内部由源代码直接完成。操作人员只需输入一些简单的字符、数字,经过一些简单的操作就可达到自己管理目的。对于图书馆工作人员来说,利用计算机高效率地完成日常事务,是适应学校发展要求、推动管理走向科学化、规范化的必要条件;而且图书馆管理又是一项非常烦琐的事情,数量之大,传统管理极其不便。然而计算机高效的操作方式,具有手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生与图书管理人员之间共享、交流信息的效率,从而有效地进行图书借阅和信息管理。1.3 国内外发展概况管理信息系统在初级阶段是统计系统,所研究的内容是数量数据间表面的规律,它可以把数据分成较相关和较不相关的组,然后把数据转换为信息。第二阶段是数据更新系统,其典型代表是美国航空公司于20世纪50年代建成的SABRE预约订票系统。它设有1008个订票点,可以存取600000个旅客记录和27000个飞行段记录。它的操作比较复杂,在任何一“点”都可以查到某一航班是否有空座位。但从概念上来讲,它只是一个数据更新系统,比如它不能告诉你以现在的售票速度何时票将售完,从而采取补救措施。因而它也是管理信息系统的低级阶段。第三阶段是状态报告系统,它可以分为生产状态报告、服务状态报告和研究状态报告等系统。比如生产状态报告系统,它的典型代表是IBM公司的生产管理系统。众所周知,IBM公司是世界上最大的计算机公司,1964年它生产出中型计算机IBM360,使计算机的水平提高了一个台阶,但同时组织生产的管理工作却大大复杂化了。一台计算机有超过15000个不同的部件,每一个部件又有若干个元件,加之IBM的工厂遍及美国各地,不同的定货有不同的部件和不同的元件,必须指出什么工厂什么设备生产什么元件,因此不仅生产复杂,装配、安装和运输都十分复杂。为了保证生产以及其他环节的顺利进行,必须要有一个以计算机为基础的生产状态报告系统。因此同年IBM建立了先进管理系统AAS,它能进行450个业务的操作。1968年,公司又建立了公用制造信息系统CMIS,运行很成功,过去需要15周的工作,该系统只用3周就可以完成。我国的管理信息系统大发展是在80年代末90年代初,国家相继建立起了“金卡”、“金关”、金桥“工程,多数企事业单位建立了局域网和广域网管理信息系统。随着世界经济和我国经济逐步向知识经济迈进,无论是基于工业经济的管理信息系统,还是面向少数专家和管理人员的专家系统 (ES)或决策支持系统 (DSS),其处理对象和服务对象,自身的系统结构,处理能力,都有了进一步的发展。第2章 需求分析2.1 需求概述2.1.1 系统设计目标根据所作的需求分析可以得出,图书馆管理系统实施后,本系统需要实现以下目标:(1) 界面设计友好、美观。(2) 数据存储安全、可靠。(3) 信息分类清晰、准确。(4) 强大的查询功能,保证数据查询的灵活性。(5) 实现对图书借阅和归还过程的全程数据信息跟踪。(6) 提供图书借阅排行榜,为图书馆管理员提供了真实的数据信息。(7) 提供灵活、方便的权限设置功能,使整个系统的管理分工明确。(8) 具有易维护性和易操作性。2.1.2 系统功能概述根据校园用户的实际需求,本系统功能分为以下六部分:l 系统设置l 读者信息管理l 图书信息管理l 图书借阅与归还l 图书信息查询l 更改密码2.1.3 用户特点 用户为全校老师和学生,对计算机应用有一定的了解,所以尽可能提供友好、简洁的操作界面和使用提示。2.2 需求描述2.2.1 图书馆管理系统总需求目标在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的图书馆管理系统,实现读者信息管理,图书信息管理,图书借阅与归还,图书信息查询,高效的图书馆系统。2.2.2 数据需求(1)数据录入和处理的准确性和实时性数据的输入是否准确是数据处理的前提,错误的输入会导致系统输出的不正确和不可用,从而使系统的工作失去意义。数据的输入来源是手工输入。手工输入要通过系统界面上的安排系统具有容错性。在系统中,数据的输入往往是大量的,因此系统要有一定的处理能力,以保证迅速的处理数据。(2)数据的安全性本系统为校园图书馆管理部门设计,因此只有特定的图书管理者才能对数据实现增、删、改、查等操作。未获授权人员无权限操作系统。(3)数据的备份要定期对数据库中的数据进行全部或新增部分的备份工作,以保证在硬件出现故障或人为原因导致无法运行时是可以快速及时的还原到原来的正常状态。2.2.3 功能需求概述(1) 管理员能够进行系统设置(2) 管理员管理读者信息(3) 管理员管理馆内图书信息(4) 读者实现图书借阅与归还(5) 读者实现图书信息查询(6) 用户更改登陆密码2.2.4约束(Constraints)计算机操作系统:Windows XP/ 2003 / Vista 系统软件编写环境:Visual Studio 2005编程语言:C#数据库系统: SQL Server 20052.2.5系统模型(1)用例模型用例模型(Use-Case Model)是系统既定功能及系统环境的模型,它可以作为客户和开发人员之间的契约。用例是贯穿整个系统开发的一条主线。同一个用例模型即为需求工作流程的结果,可当作分析设计工作流程以及测试工作流程的输入使用(2)参与者汇总管理员:负责管理图书信息和用户信息相关数据用 户:进行图书信息查询和图书借还(3)用例汇总管理员:设置系统使用权限;设置图书馆信息;设置书架信息;添加图书类型;修改图书类型;删除图书类型;添加图书档案信息;修改图书档案信息;删除图书档案信息;管理图书借阅信息;管理图书归还信息;图书信息查询管理;图书借阅信息管理。用 户:查询图书在馆信息;查询图书借阅信息;图书借阅;图书归还。第3章 系统的设计3.1 软件模块设计3.1.1 系统模块功能概述(1) 用户登录图书馆管理系统后,进入图书馆主界面,如图3.1所示,通过此界面可看到图书借阅排行榜和读者借阅排行榜,通过排行榜可以看出借阅图书的名称、图书类型、借阅次数及借阅读者等相关信息。图3.1图书馆主界面(2) 单击“系统设置”/“图书馆信息”命令,对图书馆信息进行设置操作。单击“系统设置”/“管理员设置”命令,对管理员信息进行添加、权限设置、浏览及删除操作。单击“系统设置”/“书架管理”命令,对书架信息进行添加、修改及删除操作。如图3.2、3.3、3.3所示图3.2图书馆信息图3.3权限管理图3.4书架管理(3) 单击“读者管理”/“读者类型管理”命令,对读者类型信息进行添加、修改及删除操作。如图3.5所示图3.5读者类型管理(4) 单击“读者管理”/“读者档案管理”命令,对读者信息进行添加、修改、查看及删除操作。如图3.6所示图3.6读者档案管理(5) 单击“图书管理”/“图书类型管理”命令,对图书类型进行添加、修改及删除操作。如图3.7所示 图3.7图书类型管理 (6) 单击“图书管理”/“图书档案管理”命令,对图书信息进行添加、修改及删除操作。如图3.8所示图3.8图书档案管理(7) 单击“图书借还”/“图书借阅”命令,对图书借阅信息添加操作。如图3.9所示图3.9图书借阅(8) 单击“图书借还”/“图书归还”命令,对图书归还信息进行添加操作。如图3.10所示图3.10图书归还(9) 单击“图书查询”/“图书信息查询”命令,对图书档案信息进行查询操作。如图3.11所示图3.11图书信息查询(10) 单击“图书查询”/“借阅信息查询”命令,对借阅的图书信息进行查询操作。如图3.12所示图3.12借阅信息查询(11) 单击“更改密码”按钮,对当前的用户密码进行修改操作。如图3.13所示图3.13更改密码(12) 单击“退出系统”按钮,退出当前操作系统。如图3.14所示图3.14退出系统3.1.2 系统管理流程3.2 数据库设计3.2.1 数据库分析在开发应用程序时,对数据库的操作时必不可少的,一个数据库的设计优秀与否,将直接影响到软件的开发进度和性能。图书馆管理系统的需求主要包括对图书信息的管理,其中包括基本信息和存档信息;对图书的借阅和归还管理,其中包括图书借阅信息和图书归还信息;对用户档案信息的管理,其中包括基本信息和借阅信息。3.2.2 数据库概念设计数据库设计是系统设计过程中的重要组成部分,它是通过管理系统的整体需求而制定的。下面对本系统中具有代表性的数据库设计进行详细说明。在开发图书馆管理系统时,最重要的是图书信息管理和用户档案信息。在用户档案信息中又分为基本信息、借阅信息,本系统提供了用户借阅信息查询功能,因此需要设计出用户档案信息的E-R图。本系统提供了图书信息查询功能,因此需要设计出图书信息的E-R图。由于信息多而复杂,这里只给出关键信息。用户档案信息表E-R图如图3.15所示;图书信息表E-R图如图3.16所示。用户信息姓 名性 别读者编号证件类型可借数量证件号码读者类型图3.15 用户档案信息表E-R图图书信息条形码图书名称图书类型出版社书架库存数量入馆时间图3.16图书信息表E-R图3.2.3 数据库逻辑结构设计数据库概念设计中已经分析了图书信息,用户信息主要数据实体对象,这些实体对象是数据表结构的基本模型,最终的数据模型都要实施到数据库中,形成整体的数据结构。可以使用PowerDesigner工具完成这个数据库的建模。3.3代码设计3.3.1 用户登陆功能代码实现界面如下:如图3.12所示图3.17登录系统代码如下:public partial class Login : System.Web.UI.Page OperatorClass operatorclass = new OperatorClass(); AdminManage adminmanage = new AdminManage(); ReaderManage readermanage = new ReaderManage(); protected void Page_Load(object sender, EventArgs e) /单击登陆按钮事件 protected void btnLogin_Click(object sender, EventArgs e) if (txtAdmin.Text = string.Empty) Response.Write(alert(管理员名称不能为空!); return; else DataSet adminds = null; DataSet readerds = null; adminmanage.Name = txtAdmin.Text; adminmanage.Pwd = txtPwd.Text; adminds = adminmanage.Login(adminmanage); readermanage.ID=txtPwd.Text; readermanage.Name=txtAdmin.Text; readerds=readermanage.ReaderLogin(readermanage); if (adminds.Tables0.Rows.Count 0 & txtCode.Text = Request.CookiesCheckCode.Value) SessionName = txtAdmin.Text; Response.Redirect(index/Default.aspx); else if (readerds.Tables0.Rows.Count 0 & txtCode.Text = Request.CookiesCheckCode.Value) SessionName = txtAdmin.Text; Sessionreadid = txtPwd.Text; Sessionrole = Reader; Response.Redirect(index/Default.aspx); else Response.Write(alert(登录名或密码不正确!); /单击取消按钮事件 protected void btnCancel_Click(object sender, EventArgs e) txtAdmin.Text = txtPwd.Text = txtCode.Text = string.Empty; 3.3.2查询功能代码实现代码如下:public partial class SysQuery_BookQuery : System.Web.UI.Page BookManage bookmanage = new BookManage(); protected void Page_Load(object sender, EventArgs e) this.Title = 图书信息查询页面; if (!IsPostBack) gvBind(); protected void btnQuery_Click(object sender, EventArgs e) gvBind(); protected void gvBookInfo_PageIndexChanging(object sender, GridViewPageEventArgs e) gvBookInfo.PageIndex = e.NewPageIndex; gvBind(); protected void gvBind() DataSet ds = null; int intCondition = ddlCondition.SelectedIndex; if (txtCondition.Text = ) ds = bookmanage.GetAllBook(tb_bookinfo); else switch (intCondition) case 0: bookmanage.BookCode = txtCondition.Text; ds = bookmanage.FindBookByCode(bookmanage, tb_bookinfo); break; case 1: bookmanage.BookName = txtCondition.Text; ds = bookmanage.FindBookByName(bookmanage, tb_bookinfo); break; case 2: bookmanage.Type = txtCondition.Text; ds = bookmanage.FindBookByType(bookmanage, tb_bookinfo); break; case 3: bookmanage.Author = txtCondition.Text; ds = bookmanage.FindBookByAuthor(bookmanage, tb_bookinfo); break; case 4: bookmanage.PubName = txtCondition.Text; ds = bookmanage.FindBookByPub(bookmanage, tb_bookinfo); break; case 5: bookmanage.Bcase = txtCondition.Text; ds = bookmanage.FindBookByBCase(bookmanage, tb_bookinfo); break; gvBookInfo.DataSource = ds; gvBookInfo.DataBind(); 3.3.3插入功能代码实现代码如下:public partial class BookManage_AddBook : System.Web.UI.Page ValidateClass validate=new ValidateClass(); BookcaseManage bookcasemanage = new BookcaseManage(); BTypeManage btypemanage = new BTypeManage(); BookManage bookmanage = new BookManage(); protected void Page_Load(object sender, EventArgs e) this.Title = 添加/修改图书信息页面; if (!IsPostBack) DataSet bcaseds = bookcasemanage.GetAllBCase(tb_bookcase); ddlBCase.DataSource = bcaseds; ddlBCase.DataTextField = name; ddlBCase.DataBind(); DataSet btypeds = btypemanage.GetAllBType(tb_booktype); ddlBType.DataSource = btypeds; ddlBType.DataTextField = typename; ddlBType.DataBind(); if (Requestbookcode = null) btnAdd.Enabled = true; txtInTime.Text = DateTime.Now.ToShortDateString(); else btnSave.Enabled = true; txtBCode.ReadOnly = txtBName.ReadOnly = true; txtBCode.Text = Requestbookcode.ToString(); bookmanage.BookCode = txtBCode.Text; DataSet bookds = bookmanage.FindBookByCode(bookmanage,tb_bookinfo); txtBName.Text = bookds.Tables0.Rows01.ToString(); ddlBType.SelectedValue = bookds.Tables0.Rows02.ToString(); txtAuthor.Text = bookds.Tables0.Rows03.ToString(); txtTranslator.Text = bookds.Tables0.Rows04.ToString(); txtPub.Text = bookds.Tables0.Rows05.ToString(); txtPrice.Text = bookds.Tables0.Rows06.ToString(); txtPage.Text = bookds.Tables0.Rows07.ToString(); ddlBCase.SelectedValue = bookds.Tables0.Rows08.ToString(); txtStorage.Text = bookds.Tables0.Rows09.ToString(); txtInTime.Text = bookds.Tables0.Rows010.ToString(); txtOper.Text = bookds.Tables0.Rows011.ToString(); /单击添加按钮事件 protected void btnAdd_Click(object sender, EventArgs e) ValidateFun(); bookmanage.BookCode = txtBCode.Text; if (bookmanage.FindBookByCode(bookmanage, tb_bookinfo).Tables0.Rows.Count 0) bookmanage.BookName = txtBName.Text; bookmanage.Type = ddlBType.SelectedValue; bookmanage.Author = txtAuthor.Text; bookmanage.Translator = txtTranslator.Text; bookmanage.PubName = txtPub.Text; bookmanage.Price = Convert.ToDecimal(txtPrice.Text); bookmanage.Page = Convert.ToInt32(txtPage.Text); bookmanage.Bcase = ddlBCase.SelectedValue; bookmanage.Storage = Convert.ToInt32(txtStorage.Text) + Convert.ToInt32(bookmanage.FindBookByCode(bookmanage, tb_bookinfo).Tables0.Rows09.ToString(); bookmanage.InTime = Convert.ToDateTime(txtInTime.Text); bookmanage.Oper = txtOper.Text; bookmanage.UpdateBook(bookmanage); else bookmanage.BookName = txtBName.Text; bookmanage.Type = ddlBType.SelectedValue; bookmanage.Author = txtAuthor.Text; bookmanage.Translator = txtTranslator.Text; bookmanage.PubName = txtPub.Text; bookmanage.Price = Convert.ToDecimal(txtPrice.Text); bookmanage.Page = Convert.ToInt32(txtPage.Text); bookmanage.Bcase = ddlBCase.SelectedValue; bookmanage.Storage = Convert.ToInt32(txtStorage.Text); bookmanage.InTime = Convert.ToDateTime(txtInTime.Text); bookmanage.Oper = txtOper.Text; bookmanage.AddBook(bookmanage); Response.Redirect(BookManage.aspx);/单击保存按钮事件 protected void btnSave_Click(object sender, EventArgs e) ValidateFun(); bookmanage.BookCode = txtBCode.Text; bookmanage.BookName = txtBName.Text; bookmanage.Type = ddlBType.SelectedValue; bookmanage.Author = txtAuthor.Text; bookmanage.Translator = txtTranslator.Text; bookmanage.PubName = txtPub.Text; bookmanage.Price = Convert.ToDecimal(txtPrice.Text); bookmanage.Page = Convert.ToInt32(txtPage.Text); bookmanage.Bcase = ddlBCase.SelectedValue; bookmanage.Storage = Convert.ToInt32(txtStorage.Text); bookmanage.InTime = Convert.ToDateTime(txtInTime.Text); bookmanage.Oper = txtOper.Text; bookmanage.UpdateBook(bookmanage); Response.Redirect(BookManage.aspx);/单击取消按钮事件 protected void btnCancel_Click(object sender, EventArgs e) txtInTime.Text = DateTime.Now.ToShortDateString(); txtBName.Text = txtAuthor.Text = txtTranslator.Text = txtPub.Text = txtPrice.Text = txtPage.Text = txtStorage.Text = txtOper.Text = string.Empty; Response.Redirect(BookManage.aspx); protected void ValidateFun() if (txtBCode.Text = ) Response.Write(alert(图书条形码不能为空!);location=javascript:history.go(-1);); return; if (txtBName.Text = ) Response.Write(alert(图书名称不能为空!);location=javascript:history.go(-1);); return; if (!validate.validateNum(txtPrice.Text) Response.Write(alert(图书价格输入有误!);location=javascript:history.go(-1);); return; if (!validate.validateNum(txtPage.Text) Response.Write(alert(图书页码输入有误!);location=javascript:history.go(-1);); return; if (!validate.validateNum(txtStorage.Text) Response.Write(alert(图书库存量输入有误!);location=javascript:history.go(-1);); return; 3.3.4修改/删除功能代码实现代码如下:public partial class ReaderManage_RTypeManage : System.Web.UI.Page RTypeManage rtypemanage = new RTypeManage(); protected void Page_Load(object sender, EventArgs e) this.Title = 查看读者类型页面; if (!IsPostBack) gvBind(); protected void gvRTypeInfo_PageIndexChanging(object sender, GridViewPageEventArgs e) gvRTypeInfo.PageIndex = e.NewPageIndex; gvBind(); protected void gvRTypeInfo_RowEditing(object sender, GridViewEditEventArgs e) gvRTypeInfo.EditIndex = e.NewEditIndex; gvBind(); protected void gvRTypeInfo_RowUpdating(object sender, GridViewUpdateEventArgs e) rtypemanage.ID = Convert.ToInt32(gvRTypeInfo.DataKeyse.RowIndex.Value.ToString(); rtypemanage.Name = (TextBox)(gvRTypeInfo.Rowse.RowIndex.Cells1.Controls0).Text; rtypemanage.Number = Convert.ToInt32(TextBox)(gvRTypeInfo.Rowse.RowIndex.Cells2.Controls0).Text); rtypemanage.UpdateRType(rtypemanage); gvRTypeInfo.EditIndex = -1; gvBind(); protected void gvRTypeInfo_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) gvRTypeInfo.EditIndex = -1; gvBind(); protected void gvRTypeInfo_RowDeleting(object sender, GridViewDeleteEventArgs e) rtypemanage.ID = Convert.ToInt32(gvRTypeInfo.DataKeyse.RowIndex.Value.ToString(); rtypemanage.DeleteRType(rtypemanage); Response.Write(alert(读者类型信息删除成功); gvBind(); private void gvBind() DataSet ds = rtypemanage.GetAllRType(tb_readertype); gvRTypeInfo.DataSource = ds; gvRTypeInfo.DataKeyNames = new string id ; gvRTypeInfo.DataBind(); 第4章 图书管理系统的实现整个系统除了用户登录外,主要有首页模块、系统设置模块、读者管理模块、图书管理模块、图书借还模块、图书查询模块、更改密码、退出系统八个模块。通过本系统,读者可以方便的对书目进行检索和阅览,轻轻松松就可尽览群书。4.1 用户登录模块的实现功能:本模块主要用于对用户身份进行鉴别。用户通过表单提供用户名和密码信息,系统根据用户提供的登录信息对用户进行身份查询鉴别。如果身份合法,则将用户导向系统的主页面并记录用户的相关信息,留待以后的系统页面使用。输入:用户名、密码处理:(1) 输入用户的登录信息。在页面提供的表单出输入用户的用户名和密码信息,点击“登录”按钮提交表单信息到身份验证页面。或点击“重填”按钮,重新输入。(2) 从form表单获取输入数据。 当用户单击“登录”按钮后,登录信息由form表单提交到logon.asp进行处理。(3) 用户身份进行验证。连接数据库,打开用户数据表usertype,检验用户登录信息。以输入数据“用户名”为查询条件创建数据集查看输入用户名是否存在。如果存在,继续检验输入的密码是否正确。密码和用户名都正确,则进入图书馆主页面frame.asp;如果用户名不存在或密码不正确,则给出登录失败的提示框,并返回首页重新登录。输出:图书馆主页面模块所使用的数据表本页面使用了library.mdb数据库中的用户信息表(usertype)。4.2首页模块的实现本系统的主页面使用了框架结构。使用框架(frames)结构设计的HTML文件,能够将整个窗口分成几个独立的小窗口,每个窗口可以分别载入不同的文件。框架的主要优点是独立显示内容,能直观的分开内容。可以在一个框架中定义链接,在另一个框架中显示内容或触发操作,而不必从重设计整个屏幕。框架不能单独存在,而要用框架组来定义。框架组用标签定义,框架用标签定义。首页frame的代码如下:public partial class Login : System.Web.UI.Page OperatorClass operatorclass = new OperatorClass(); AdminManage adminmanage = new AdminManage(); ReaderManage readermanage = new ReaderManage(); protected void Page_Load(object sender, EventArgs e)从以上代码可以看出,整个页面分为2个frame。顶部为菜单页面,下面是显示页面。在系统运行过程中,顶部菜单页面一直都是显示状态,方便用户在不同的功能模块之间切换;显示页面则根据顶部菜单显示不同的阅读内容。4.3 系统设置模块的实现功能:用户进入此页面后,所有的系统信息将会显示出来,用户可以看到系统的各种信息并加以修改,点击系统设置,就可以进一步查询与修改系统信息的具体内容。输入:点击系统设置的超链接文本处理:(1) 构造页面格式。使用表格标签构造页面表单,构造放置各个字段及字段值的表单,美化页面。(2) 连接数据库。与数据库创建链接,使用SQL语言在数据库中选取符合条件的记录。在符合条件的记录中选取相关字段值组成记录集。显示在页面的相应位置中。(3) 分页显示记录以ForNext循环语句依次读取数据集rs中的记录。为方便浏览,将记录分页显示。每十五个记录为一页,以“前一页”和“下一页”超链接端点实现页面间的跳转。(4) 创建超链接文本。将系统设置为超链接文本。用户点击想要查看详细内容的留言的留言主题字段,程序就会将页面导向guest页面。在guest页面中,用户就可以看到该条图书的详细内容。4.4 图书管理模块的实现功能:点击图书管理链接文本后,进入浏览页面。在本模块中,图书按其分类逐级显示,用户可以按照图书的分类方便的逐级查找图书。找到指定的图书后,用户可以阅读,也可以做书签,查看和发表书评信息,还可以到投票界面去投票。输入:点击分类浏览的超链接文本处理:(1) 构造页面格式。使用H表格标签构造页面表单,构造放置各个字段及字段值的表单,美化页面。(2) 连接数据库。与数据库创建链接,使用SQL语言在数据库中选取符合条件的记录。在符合条件的记录中选取相关字段值组成记录集。显示在页面的相应位置中。(3) 显示类别信息。页面按照图书的类别逐级进行排列,并设置超链接文本,读者可以方便的单击连接来进行访问。记录以分页的形式显示。(4) 阅读图书。逐级查找要阅读的书目。找到后,单击书目链接,页面导向readbook页面进行阅读。4.5 读者管理模块的实现功能:在各种表格和表单构成的add_bookmark页面中的适当位置输入用户姓名、读者类型、证件类型、证件号码、电话等详细内容等信息后,提交到add_action.页面进行将一条新记录插入数据表的操作。输入:新增加的书签信息的用户选择的表情图标和书签的详细内容。处理:(1) 构造页面格式。应用表格进行页面布局,相应的字段名称后使用多行文本框或单选框表单组件,构成书签信息输入页面。(2) 判断合法性。在连接数据库之前,首先判断用户是否有注册。(3) 连接数据库。以上一页提交的图书的编号为条件选取数据表中的记录创建记录集,将记录中的用户名、读者类型、证件类型、证件号码、电话等信息显示在相应位置。(4) 插入操作。获取相关信息,在add_action.asp页面中打开数据库,使用recordset对象的insert into方法向书签信息表bookmark插入一条新记录。输出:插入成功对话框。4.6 图书查询模块的实现功能:点击图书查询链接文本后,进入浏览页面。在本模块中,需要输入相应的图书信息。系统会根据用户的具休要求对数据库进行逐条记录的筛选。最后显示在页面的相应位置。输入:点击图书查询链接文本处理:(1) 构造页面格式。使用HTML语言的TABLE表格标签构造页面表单。本模块使用了框架结构。单行文本框和单选框来确定查询条件。(2) 查询条件。在三种查询方式中选择一种作为读者的查询方式。然后在单行文本框中输入查询条件。(3) 查询结果。连接数据库,在相应的数据表中选取符合查询条件的记录。将查询结果显示在下面的窗口中。4.7 更改密码模块的实现更改密码模块功能:,在首页的上部分中的页面中,点击“更改密码”,就会调用生成一个窗口。用户在生成的窗口中输入新的密码,提交后程序会将数据表中的密码进行修改。输入:点击更改密码的链接文本处理:(1) 构造页面格式。使用构造页面表单,构造放置各个字段及字段值的表单,美化页面。(2) 判断合法性。对对象中的用户名字段值进行判断,判断用户的登录是否合法。如果不合法,显示要求重新登录的提示语,重新登录。(3) 连接数据库。与数据库创建链接,使用SQL语言在数据库中选取符合条件的记录。在符合条件的记录中选取相关字段值组成记录集。显示在页面的相应位置中。(4) 输入新密码。在页面的相应位置填入用户的旧密码、新密码,在重新输入一次新密码,以确保输入无误。然后提交到pass_action页面进行处理。(5) 修改数据。 从前页提交的数据中读取相关信息。首先判断用户的登录是否合法。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸设计 > 任务书类


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!