网上购书系统
摘要
八年经验、专业指导毕业
www.bysjzd.com
需要全套设计请联系:731767310
网上书店
摘 要
随着网络技术的发展,Internet已成为最具市场潜力的技术领域,使用Web技术设计的数据库应用软件,是目前Internet市场的技术中坚,各种Web应用如电子商务,网上购物等都采用这种方式实现。互联网的优势在于用户能同时从不同地点、不同数据库中存取数据。本文介绍了一个网上购书系统,该系统通过微软平台,采用ASP和ODBC技术,可以访问Access、SQL Server等多种数据库。文中介绍了WWW体系结构中三层客户/服务器的工作模式,重点探讨了目前流行的几种Web数据库访问技术。该系统通用性强,经过简单的修改就可以应用于更广泛的网上购物系统,具有一定的推广价值。
关键词:网上书店 Web数据库 ASP技术
I
The Book Shop on the Internet
Abstract
With development of the network technology, Internet has become an area which has the most potential market. In this area, Web Database application software dominate in the Internet technology. Many Web-based applications such as electronic commercial and shopping on net etc. have been realized by means of them. The great advantage of Internet is that the customer can store and fish data from different areas and Databases in Internet all over the world at the same time. This paper reports a net-bookshop system which can visit a number of the Databases including Access and SQL Server by employing ASP and ODBC techniques by use of Microsoft platform. The model of 3-tier architecture in the WWW system is described and the current techniques of visiting Web Date bases are discussed in detail. The system can be widely used in various net-shopping system by supply modification, and therefore, is of great applicability and dissemination.
Keywords: net-bookshop; Web database; ASP technique
II
摘要
目录
摘 要 ..................................................................................................................... I
Abstract ............................................................................................................... II
第一章 绪论 .................................................................................................. 5
1.1 引言 .......................................................................................................................... 5
1.2 课
目的和意义 .................................................................................................... 5
第二章 系统概述 ........................................................................................... 3
2.1系统构架 .................................................................................................................. 3
2.2系统功能模块设计 ................................................................................................ 3
2.2.1整体系统功能组织 ............................................................................................................. 4
2.3.1 网页开发利器 Macromedia Studio MX 2004 .......................................................... 5
2.3.2 Web应用程序开发技术Active Server Pages........................................................ 5
2.3.3数据库平台的的选择 Microsoft SQL Server 2000 ........................................... 7
第三章 系统分析和设计 .............................................................................. 8
3.1系统功能详细分析 ................................................................................................ 8
3.1.1前台详细功能描述 ............................................................................................................. 8
3.1.2 后台详细功能描述 ............................................................................................................ 8
3.2系统模块设计 ......................................................................................................... 9
3.2.1 系统前台模块组成 ............................................................................................................ 9
3.2.2 系统后台模块组成 ............................................................................................................ 9
3.2.3 用户类型设计 ..................................................................................................................... 9
3.3系统主要工作流程设计 ..................................................................................... 11
3.3.1前台管理员管理程序流程 ............................................................................................. 12
3.3.2 后台管理员管理程序流程 ............................................................................................ 14
3.3.3 后台管理员管理程序流程 ............................................................................................ 14
3.4数据库分析和设计 .............................................................................................. 16
3.4.1数据库需求分析................................................................................................................ 16
3.4.2数据库架构 ......................................................................................................................... 16
3.4.2 数据库表的详细设计 ..................................................................................................... 17 第四章 系统实现 ......................................................................................... 22
4.1程序主要页面 ....................................................................................................... 22
4.1.1系统首页 ............................................................................................................................. 22
4.1.2 各主要框架页面 .............................................................................................................. 22
4.1.3图书详细资料页面 ........................................................................................................... 22
4.1.4 用户登录购书页面 .......................................................................................................... 22
4.1.5 购物车页面 ....................................................................................................................... 22
4.1.6 下订单页面 ....................................................................................................................... 23
4.1.7 结账页面 ............................................................................................................................ 23
III
4.1.8 订单完成页面 ................................................................................................................... 23
4.1.9 我的订单 ............................................................................................................................ 23
4.1.10网上书店后台管理添加新书页面 ............................................................................. 23
4.2 IIS配置与SQL Server 数据库连接............................................................ 23
4.2.1 II配置 ............................................................................................................................... 23
4.2.2创建SQL Server数据库 ................................................................................................ 24
4.3 系统程序实现 ...................................................................................................... 24
4.3.1系统首页页面 .................................................................................................................... 24
4.3.2 购物车界面 ....................................................................................................................... 31
4.3.3 用户下订单页面 .............................................................................................................. 32
4.3.4 用户结账页面 ................................................................................................................... 33
4.3.5订单完成页面 .................................................................................................................... 35
4.3.6 我的订单页面 ................................................................................................................... 36
4.3.7 网上书店后台管理页面 ................................................................................................. 38 第五章 结束语 ................................................................................................ 41
致 谢 ........................................................................................................... 42
参考文献 ........................................................................................................... 43
IV
目录
第一章 绪论
1.1 引言
在当前充满竞争的社会中,信息技术深刻地改变着社会,人们对信息的需求越来越迫切,利用信息技术改变传统的产业结构,实施全面的自动化管理,提高劳动生产率,提高服务质量,提高对市场的应变能力,减少销售环节,提高产品竞争能力等方面,有巨大的潜力。信息技术的发展核心是World Wide Web,也叫Web或WWW,WWW之所以能够飞速发展的原因是用户能够从世界上任何地方访问信息和数据,并且越来越需要具备对驻留数据库和数据存储中大量信息的Web访问能力。尽管每个数据供应厂家都在开发新的Internet访问产品以缩小与Web数据库之间的距离,但仍没有一个统一的访问平台。在具体应用中,仍需要编写定制的数据库访问应用程序。
1.2 课题目的和意义
早期的Web数据库主要是指那些位于不同Web网站的大型HTML文档存储库,最近Web数据库又将传统的数据库管理系统(一般为关系型数据库管理系统)结合起来。但是,Web缺乏检索机制,特别是基于内容和基于结构的检索。由于缺乏数据库的功能,所以它不象数据库管理系统那样,易于对存储的数据进行管理和组织。
支持客户/服务器结构的数据库管理系统,如Oracle,Sybase,Informix,SQL Sever等,其技术已经相当成熟,并且广泛应用于各个领域。它们很适合于对大批数据进行有序,规则的组织于管理。当给出查询条件后,能够很快得到查询结果,许多高档数据库都具有分布式处理,联机事务处理的功能,并且能够使不同的操作系统,网络协议在同一环境下工作。但这些应用软件缺乏超文本连接的功能,得不到整个Web环境为背景的支持。
因此,在网络中,Web与数据库的互连是一个重点。在Internet中,信息一般集中存放在数据库中,而Web则用于信息的共存,交换和发布,如果Web和数据库结合起来,就能够最大限度地发挥数据库的组织数据的有效性和Web的发布数据的开放性,使得整个
V
Internet系统具有数据库功能,网络功能,超文本功能和开放性,交互性,实时动态性,真正让数据库得到共享。
实现Web与数据库接口总体思路采用“中间件”将Web与数据库“粘”起来,常用的实现技术有:CGI(Common Gateway Interface,通用网关接口),Web服务器专用API(Application Program Interface,应用编程接口,如ISAPI,NSAPI),JDBC(Java
Database Connectivity, Java数据库的连接),对象Web(Object Web),ASP等。它们分别采用不同的软件体系结构和实现机制,对于Web与数据库的通用接口系统,一般也采用这些技术实现。
另外,很多数据库厂家也推出了内置的商用Web数据库网关产品,它可以将Strctured Query Language(SQL结构化查询语言)命令直接输入HTML文件,供Web服务器处理,如Oracle的Oracle WebServer2.0中内置了一个高性能,安全性很高的本机数据库连接产品,运用这个平台,Web数据库开发人员可以用
开发工具创建Web数据库应用程序,而不需要数据库网关产品与Web数据库环境连接起来。又如Informix 公司的IWUA(Informix Universal Web Architecture, Informix统一Web结构)。这种类型的解决
与自己的数据库产品结合的最好,但无法通用。
另外,还有一些Web的数据库通用接口系统产生,如Web2DC,它采用虚拟CGI技术提供服务,支持对种数据库管理系统的访问,同时提供用户书写数据库驱动程序的接口,使开发者只需了解HTML,无须了解SQL和数据库内部的复杂细节,这种通用接口对于不熟悉程序设计和SQL的开发人员比较合适。
在集成的过程中,Web与数据库之间的交互接口是必须实现的关键环节。本题目实现的是一个网上购书系统,书店可根据图书量和访问量的大小选用各种类型数据库和操作系统。所编写的程序应能在不同的操作系统平台,不同类型的数据库中通用。文中通过分析网络的结构,Web数据库的访问过程,总结分析了目前流行的几种Web数据库访问技术,选择了一种有发展前途的、通用性强的便于二次开发的数据库访问技术,实现书店网上购书的功能。本题目的意义在于,该软件经过修改,就可以在单机和桌面数据库上实现网上购物,使更广泛的商业活动进入Internet,使之为更多的百姓服务。
2
第一章 绪论
第二章 系统概述
本题目目标是实现一个书店中的图书网上订购。题目中的书店是在册几百至几千的中小型书店,对于这样的规模和访问量,书店可选用不同档次的机型,采用不同的操作系统构成网上购书系统。如操作系统选择WIN98或者Windows NT,Windows 2000, Windows
XP 等,数据库可选择的是SQL Server。
在网上书店中,书店管理员首先将图书目录建库入网。用户便可通过互联网进行图书查询、会员登记以及图书订购。查询可按分类进行,根据显示的书名和类别找到自己希望购买的图书,图书管理员可查询订购情况,将图书邮购到客户手中。
2.1系统构架
网上书店从本质上来说应该就是一个数据库支持的在线售书系统。因此,采用分层模式来设计,从数据层到应用层,最后到用户接口层进行设计。系统构架如图2.1所示
数据层
设计数据服务
配置系统信息
应用层
用户接口层
图2.1 系统总体框架图
2.2系统功能模块设计
系统的主要功能如下:
3
, 分权限发布多用户管理、书藉资料管理。
, 大类小类两级无限制软件分类、无限制添加书籍资料。
, 资料批量删除、批量分类转移等批量管理功能。
, 采用交互性的订单处理方式。
, 客户管理功能。
, 会员制度,分VIP会员和一般会员,并提供不同的优惠。
, 图书评论与管理功能。
, 完善而方便的书籍资料添加、编辑表单,无组件图片上传。
, 强大的搜索功能,可以按各个字段进行不同方式的高级搜索。
, 付款方式管理。
2.2.1整体系统功能组织
为更好的实现以上功能,将系统主要分为两大功能模块:系统前台模块和系统后台模
块。如图2.1所示
网上小书店
(eBook)
前台
用户信息管书籍信购物车 订单
理 息
后台
管理员信息 书籍信息管用户信息管销售管理
理 理
图2.1
2.3 开发工具的选择
网上书店是一个动态的网上售书系统,我们采用的是Macromedia Studio MX 2004,
ASP,和Microsoft SQL Server 2000数据库作为开发工具。
针对网上书店界面设计的要求,我们采用Macromedia Studio MX 2004。
4
第二章 系统概述
而针对网上书店动态性的要求,采用ASP和SQL Server 2000,ASP内含于IIS,通过它,可以结合HTML网页、ASP指令和ActiveX无件建立动态、交互且高效的Web服务器应用程序; SQL Server 2000是目前相当流行的网络数据库,技术先进,支持超大规模数据库技术、并行查询、提供完备的数据库安全方案等,这些特点正是支撑网上书店的数据库所必须的。
2.3.1 网页开发利器 Macromedia Studio MX 2004
它是用于优化 Web 开发的集成工具集。它对 Web 开发的各个方面提供专业功能,全
Web 开部集成在一个软件包中。提供无缝集成和针对所有工具的通用用户界面,以便优化 发和应用程序工作流,从而提高效率、改善易用性。
2.3.2 Web应用程序开发技术Active Server Pages
Active Server Pages(ASP)是微软公司推出的Web应用程序开发技术。微软把ASP描述为“一个服务器的脚本环境,在这里可以生成和运行动态的、交互式的、高性能的Web服务器应用程序”。可见,ASP即不是一种语言,也不是一种开发工具;而是一种技术框架,其主要功能是为生成动态的、交互式的Web服务器应用程序提供一种共呢感强大的方式或技术。
ASP属于ActiveX技术中的服务器端技术,因此与通常的在客户端实现的动态页面技术如Java Applet、ActiveX Control、VBScript、JavaScript等所不同的是,ASP的命令和脚本都在服务器中解释执行,送到浏览器的只是标准的HTML页面。从本质上讲,ASP实际上是将标准的HTML文件拓展了一些附加特征,像标准的HTML文件一样包含HTML对象并且在一个浏览器上解释并显示,任何可以放在HTML中的东西,如Java applets、闪烁字符串、客户端脚本、客户端Active控件等,都可以放在ASP中。ASP有如下四个重要特征使之具备很强的通用性和可扩展性。
1(ASP提供了六大类内置对象
Request(请求):从前端用户取得信息;
Response(响应):将信息送给前端用户;
Server(服务器):提供Web服务器工具;
5
Session(会话):储存在一次会话内的用户信息,仅被该用户访问;
Application(应用):管理所有的会话信息,供所有用户共享;
ObjectContext(对象上下文):配合Transaction服务器进行分布式事务处理(IIS4.0新增)。
利用这些ASP中提供的内置对象,可以使脚本程序更加强大;这些对象允许你从浏览器中接受和发送信息,甚至可以在授权范围内控制服务器端的文件管理系统。例如,利用request对象,可以接受客户在HTML Form中填写的信息,并在一个脚本中来响应它,然后再用Response对象的write方法输出到客户端浏览器。利用Session对象,你可以进行会话管理,也可以进行浏览器活动信息的跟踪。而利用最新的ObjectContext对象可以提交和终止处理。
2(ASP可以在服务器端包含脚本
ASP支持的脚本语言极其丰富,几乎所有的脚本语言如VBScript、JavaScript以及Perl等都可以作为ASP的脚本语言。这样,不但可以保证它有足够的能力来处理各种情况,而且能够方便开发者选择自己熟悉的语言开发。
3(ASP是ActiveX技术中的服务器端技术,Web服务器本身带有相当数量的标准服务器端ActiveX组件,这些组件允许你做诸如依据浏览器能力的不同进行不同显示,以及利用Ad Rotator组件来实现随机广告的处理工作。除了利用一些标准的ActiveX组件,ASP还允许创建自己的附加ActiveX 组件,这样,就可以不受限制地拓展ActiveX组件,增强ASP的能力。
4(ASP可以方便地链接数据库
ASP可以通过数据链接组件ADO和诸如SQL Server、Access等数据库进行链接。
ADO(ActiveX Data Object),又叫ActiveX数据对象,是一项容易使用并且可扩展的,链接数据库、操作数据库、查询数据库,并且可以将数据库访问结果添加到Web页面的技术。可以使用ADO去编写紧凑简明的脚本以便链接到Open DataBase Connectivity(ODBC)
兼容的数据库和OLE DB兼容的数据源。ADO链接数据库的功能非常强大,使用ActiveX数据对象(ADO),可以对来自许多种提供者的数据进行读取和写入操作。例如,可以使用ADO来访问Microsoft Access, Microsoft SQL和Oracle数据库中信息。
ActiveX数据对象(ADO),允许用户使用客户端的 SQL查询语句经过数据库的提供者或ODBC数据源中的数据库驱动程序,对服务器端的数据库数据进行查找和操作。与其他链接数据库和操作数据库的方法相比,ADO方法具有容易掌握、操作简单、使用灵活、占
6
第二章 系统概述
用内存和硬盘空间小等特
2.3.3数据库平台的的选择 Microsoft SQL Server 2000
Microsoft SQL Server 2000是微软公司近年来最具有里程碑性质的企业级数据库产品,它凝结了全世界的 Microsoft 研究团队的共同努力和创新。SQL Server 2000 在企业级支持、商业智能应用、管理开发效率等诸多方面,较以往的SQL Server有了质的飞跃,是极具前瞻性的下一代先进的数据管理与分析平台。
1.全面提升企业级应用系统的安全性、可靠性和性能
SQL Server 2000提供了一个更安全、可靠和高效的数据管理平台;提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。能够大幅降低企业级系统的运行和维护的风险及IT管理成本,增强企业客户的管理能力。其中系统冗灾恢复时间达到前所未有的秒级响应能力,大幅提高了系统的性能、扩展型和32位的运算能力,并加以更严格的安全控制,SQL Server 2000在支持现实中最苛刻的企业级系统的道路中迈出了一大步。
2.推动企业管理的全面信息化,满足商业智能应用的复杂业务需求
SQL Server 2000 是一个全面的数据库平台,使用集成的商业智能 (BI) 工具向客户提供了企业级的数据管理。SQL Server 2000能够满足大型企业客户对TB级海量业务数据的实时统计分析、动态报表、集成和
、监控预测、风险管理等多种复杂业务需求,帮助客户综合分析来自多结构和异类数据源的不同商业数据并将其转化为辅助企业决策的商业信息,推动企业信息化管理和业务管理。这使您的企业可以构建和部署经济有效的 BI 解决方案,帮助您的团队通过记分卡、Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。
3.拓展业务应用空间,大幅提升管理开发效率,降低IT成本
与 Microsoft Visual Studio、Microsoft Office System 、XML、Web Service以及新的开发工具包的紧密集成使 SQL Server 2000 与众不同。无论您是开发人员、数据库管理员、信息工作者还是决策者,SQL Server 2000 都可以为您提供创新的解决方案,拓展您的应用空间,帮助您从数据中更多地获益,带来新的商业机遇。同时SQL Server 2000
可支持在多个平台、程序和设备之间共享数据,更易于与内外部系统协调互通,客户可以从降低总体拥有成本和更快的开发时间中受益。
7
第三章 系统分析和设计
网上书店的魅力主要表现在两个方面:一是品种丰富,读者选书的余地大。由于不受实物陈列空间的限制,网上书店向读者提供的选书品种往往能数十倍于实物书店,读者可能通过分类查找方式选择自己所需购买的图书。二是购买方便。读者在网上查找到自己所需的图书后,可立即发出购书信息,网上书店接到订购信息后即可确认,几天就可收到送达的所购图书。
对于图书的进货,完全由管理员来实现。主要是对图书信息的录入过程。对于图书的销售,包括客户下订单和管理员对核定订单配送。管理员可以修改订单的各种属性、状态、数量,也可以修改客户的相关信息,还可以对订单进查询、删除操作。 3.1系统功能详细分析
为更好的实现以上功能,将系统主要分为两大功能模块:系统前台模块和后台模块。 3.1.1前台详细功能描述
书籍信息模块:热门书籍浏览、新书籍浏览、书籍分类浏览、按书籍名称搜索、书籍详细信息。
购物车模块:添加书籍到购物车、购物车信息修改、结账。
用户信息管理模块:注册新用户、登录、用户修改密码、用户个人资料管理。
订单模块:查询个人订单列表、查询某笔订单的详细信息。
3.1.2 后台详细功能描述
管理员信息管理:登录;添加新管理员、删除管理员;修改密码;管理员日志。
书籍信息管理:添加、删除书籍类别;添加、修改、删除书籍信息。
用户信息管理:查询用户信息。修改账户金额
销售管理:查询某月的销售情况(包括每种书籍的售出数量、相关订单数、销售收入)。
8
第二章 系统概述
3.2系统模块设计
3.2.1 系统前台模块组成
包括用户浏览模块和用户管理模块。前者又分为新品图书、畅销图书、推荐图书、搜索图书、图书分类;后者分为用户登录、信息中心、个人资料、收货资料、修改密码、购物车、我的订单、积分查询、统计信息这些子孙模块。如图3.2.1所示。
3.2.2 系统后台模块组成
包括商品管理模块,分类管理模块和用户管理模块。商品管理模块分为添另新书、书籍管理、订单管理、评论管理;分类管理模块分为大类管理、小类管理、类别转移;最后用户管理模块分为客户管理、用户管理、送货/汇款设置。如图3.2.2所示。
3.2.3 用户类型设计
分为两类:普通用户和管理员用户。普通用户分为注册用户与非注册用户,这两种用户的权限区别在于能进行购物(提交订单),以及对个人资料的管理包括个人资料、购物车、积分查询等用户管理模块的全部功能。注册用户只能对自己的信息进行修改、浏览,但是不具有管理网上书店后台功能管理的权限,也不能对其他用户的信息进行管理。非注册用户只能够浏览图书的详细资料。管理员类用户在普通用户的权限上增加留言管理的权利。可以对网站后台图书,用户以及订单、评论等进行管理。
9
新品图书
畅销图书
推荐图书
用户浏览模块 搜索图书
图书分类 网
上用户登录 书
店
前信息中心 台
个人资料
用户管理模块 收货资料
修改资料
购物车
我的订单
积分查询
统计信息
图3.2.1
10
第三章 系统分析和设计
添加新书
书籍管理
商品管理模块 订单管理
评论管理 网大类管理 上
书分类管理模块 小类管理 店
后
类别转移 台
客户管理
用户管理模块 用户管理
送货/汇款设置
图 3.2.2
3.3系统主要工作流程设计
网上书店作为一个电子商务型网站来说,整个网上购物流程简单、合理是至关重要的。
11
3.3.1前台管理员管理程序流程
如图3.3.1所示
12
第三章 系统分析和设计
新品图书new .asp
网上书店首页
Index.asp
畅销图书hot.asp
推荐图书commend.asp
否 搜索图书search.asp 登录 用户浏览模块
图书分类class.asp
用户登录login.asp
信息中心muser.asp 是
个人资料userinfo.asp
收货资料recinfo.asp
修改密码changepws.asp
用户管理模块 购物车car.asp
我的订单myorder.asp
积分查询deposit.asp
统计信息statinfo.asp
图3.3.1
13
3.3.2 后台管理员管理程序流程
如图3.3.2所示
添加新书页面 addpro .asp
管理员登录页面
书籍管理页面mpro.asp login.asp
订单管理页面proder.asp
评论管理页面procomm.asp
管理员
大类管理页面class.asp
是
小类管理页面sub.asp
类别转移页面mclass.asp
客户管理页面quser.asp
用户管理页面huser.asp
送货/汇款设置delivery.asp
图3.3.2
3.3.3 后台管理员管理程序流程
如图3.3.3
14
第三章 系统分析和设计
网上书店首页index.asp 用户登录index.asp
挑选图书
单击图书旁的“购物
车”,调用页面icar.asp
购买图书
查看或修改购物车
car.asp
是
继续采购
否
下订单cart.asp
结算Check.asp
提交订单vorder.asp
图3.3.3
15
3.4数据库分析和设计
几乎所有的Web项目都是基于数据库的,这使得数据库的设计在整个项目中的地位举足轻重。相关研究表明,在数据库应用系统的开发中,项目成功50%靠数据库的设计。良好的数据库设计往往能够减少开发的负担。
3.4.1数据库需求分析
本次开发的数据库包括4个方面。
用户信息数据表:存储注册用户、管理员用户姓名、密码、身份证号、积分等有关数据。包括管理员基本信息数据表、注册用户基本信息数据表。
图书信息数据表:存储图书有关分类、评论及库存信息数据。包括图书大类分类数据表、图书小类分类数据表、库存图书数据表、读者评论数据表。
用户送货汇款方式数据表:存储用户送货汇款方式竺、价钱等有关数据。包括用户送货汇款方式信息数据表。
用户订单数据表:存储用户订单有关商品名称、数量等数据。包括用户订单信息数据表。
3.4.2数据库架构
本系统使用SQL Server 2000作为数据库管理系统。在企业管理器中建立一个数据库,将其命名为wsss.该数据库包含的数据表及其相应功能如表3.4.2所示。
表3.4.2wsss数据库包含的数据表及其功能
数据表 功能
admin 存放管理员基本信息
category 存放图书大类分类信息
delivery 存放用户送货汇款方式信息
orders 存放用户订单信息
product 存放库存图书信息
review 存放读者评价信息
sorts 存放图书小类分类信息
user 存放注册用户基本信息
16
第三章 系统分析和设计
3.4.2 数据库表的详细设计
1.管理员信息表admin
管理员信息表用于存放管理员的信息,包括管理员、管理员姓名、管理员密码、管理员权限共4个字段。如表3.4.2.1所示。
表3.4.2.1 admin
字段名 数据类型及长度 说明 备注
Id Int 管理员编号 主关键字
Admin Nvarchar(10) 管理员姓名 不能为空 Password Nvarchar(10) 管理员密码 不能为空
Rank Int 管理员权限 允许为空
2.图书大类分类信息表category
图书大类分类信息表存放图书主要大类分类具体信息。包括大类编号、大类名称、是否在首页显示、顺序共4个字段。如表3.4.2.2所示。
表3.4.2.2 category
字段名 数据类型及长度 说明 备注
Categoryid Int 大类编号 主关键字
category Nvarchar(50) 大类名称 允许为空
First Int 是否在首页显示 允许为空 Categoryorder Nvarchar(50) 顺序 允许为空
3.用户送货汇款方式信息表delivery
用户送货汇款方式信息表主要用于存放用户付款方式信息。包括编号、送货/汇款方式名称、价钱、送货/汇款方式选择、顺序共5个字段。如表3.4.2.3所示。
表3.4.2.3 delivery
字段名 数据类型及长度 说明 备注
Deliveryid Int 编号 主关键字
Subject Nvarchar(50) 送货/汇款方式名称 允许为空
Fee Int 价钱 允许为空
Methord Int 送货/汇款方式选择 允许为空 Deliveryidorder Int 顺序 允许为空
17
4(用户订单信息表order
用户订单信息表主要用于存储用户订单的基本信息。包括编辑编号、用户名称、日期、图书编号、产品订购数量、订单编号、状态、收货人、收货地址、邮编、留言、汇款方式编号、送货方式编号、性别、总金额、真实姓名、Email、电话、用户ID共19个字段。如表3.4.2.4所示。
表3.4.2.4 order
字段名 数据类型及长度 说明 备注
Actionid Int 编辑编号 主关键字
username Nvarchar(10) 用户名称 允许为空
Actiondate Smalldatetime 日期 允许为空
Id Int 图书编号 允许为空
Productnum Int 产品订购数量 允许为空
Goods Nvarchar(50) 订单编号 允许为空
State Int 状态 允许为空
Recepit Nvarchar(50) 收货人 允许为空
Address Nvarchar(100) 发货地址 允许为空
Postcode Nvarchar(6) 邮编 允许为空
Comments Nvarchar(500) 留言 允许为空
Paymethod Int 汇款方式编号 允许为空 Deliverymethord Int 送货方式编号 允许为空
Sex Int 性别 允许为空
Paid Int 总金额 允许为空
Realname Nvarchar(10) 真实姓名 允许为空
Usermail Nvarchar(50) Email 允许为空
Usertel Nvarchar(500 电话 允许为空
Userid Int 用户ID 允许为空
5(库存图书信息表product
库存图书信息表主要用于存储库存图书的基本信息。包括图书编号、书名、作者、装帧、出版日期、积分、详细介绍、目录、用户评级分数、市场价、会员价、推荐、订购次数、查看次数、折扣、小类id、大类id、缩略图、添加日期、评级次数、vip价格、出版社、ISBN、页数、开本、版次、简介共27个字段。如表3.4.2.5所示。
18
第三章 系统分析和设计
表3.4.2.5 product 字段名 数据类型及长度 说明 备注
id Int 图书编号 主关键字 Name Nvarchar(255) 书名 允许为空 author Nvarchar(50) 作者 允许为空 Intrduce Nvarchar(255) 装帧 允许为空 Productdate Smalldatetime 出版日期 允许为空 Socre Int 积分 允许为空 Detail Nvarchar(8000) 详细介绍 允许为空 Content Nvarchar(2000) 目录 允许为空 Rank Int 用户评级分数 允许为空 Price1 Int 市场价 允许为空 Price2 Int 会员价 允许为空 Recommend Int 推荐 允许为空 Solded Int 订购次数 允许为空 Viewnum Int 查看次数 允许为空 Discount Int 折扣 允许为空 Sortsid Int 小类id 允许为空 Categoryid Int 大类id 允许为空 Pic Nvarchar(255) 缩略图 允许为空 Adddate Smalldatetime 添加日期 允许为空 Ranknum Int 评级次数 允许为空 Vipprice Int Vip价格 允许为空 Mark Nvarchar(255) 出版社 允许为空 Type Nvarchar(255) ISBN 允许为空 Pagenum Int 页数 允许为空 Format Nvarchar(50) 开本 允许为空 Printed Int 版次 允许为空 Desc Nvarchar(255) 简介 允许为空
6(读者评价信息表review
读者评价信息表主要用于存储读者对图书的评价内容信息。包括评价编号、图书编号、
标题、日期时间、评论内容、是否通过审批共6个字段。如表3.4.2.6所示。
19
表3.4.2.6 review
字段名 数据类型及长度 说明 备注
Reviewed Int 评价编号 主关键字
Id Int 图书编号 允许为空
Title Nvarchar(255) 标题 允许为空
Reviewdtm Smalldatetime 日期时间 允许为空
Reviewcontent Ntext 评论内容 允许为空
Audit Int 是否通过审批 允许为空
7(图书小类分类信息表sorts
图书小类分类信息表主要用于存储图书小类分类具体信息。包括小类编号、小类名称、顺序、对应大类编号、是否在首页显示共5个字段。如表3.4.2.7所示。
表3.4.2.7 sorts
字段名 数据类型及长度 说明 备注
Sortsid Int 小类编号 主关键字
Sorts Nvarchar(50) 小类名称 允许为空
Sortsorder Int 顺序 允许为空
Categoryid Int 对应大类编号 允许为空
First Int 是否在首页显示 允许为空
8(注册用户基本信息表user
注册用户基本信息表主要用于存储用户基本内容信息。包括用户ID、用户名称、Email、用户密码、身份证号、手机、QQ、注册日期、密码提示、密码答案、登录次数、电话、送货方式编号、汇款方式编号、性别、真实姓名、是否为VIP用户、系统广播、用户积分共24个字段。如表3.4.2.8所示。
20
第三章 系统分析和设计
表3.4.2.8 user
字段名 数据类型及长度 说明 备注 Userid Int 用户ID 主关键字 Username Nvarchar(10) 用户名称 允许为空 Usermail Nvarchar(50) Email 允许为空 Password Nvarchar(10) 用户密码 允许为空 Identify Nvarchar(50) 身份证号 允许为空 Mobile Nvarchar(50) 手机 允许为空 Userqq Nvarchar(50) QQ 允许为空 Adddate Smalldatetime 注册日期 允许为空 Quesion Nvarchar(50) 密码提示 允许为空 answer Nvarchar(50) 密码答案 允许为空 Loginnum Int 登录次数 允许为空 Lastvst Smalldatetime 最后一次登录时间 允许为空 Recepit Nvarchar(50) 收货人姓名 允许为空 City Nvarchar(50) 城市 允许为空 Address Nvarchar(100) 地址 允许为空 Postcode Nvarchar(6) 邮编 允许为空 Usertel Nvarchar(50) 电话 允许为空
Deliverymethod Int 送货方式编号 允许为空 Paymethod Int 汇款方式编号 允许为空 Sex Int 性别 允许为空 Realname Nvarchar(50) 真实姓名 允许为空 Vip Bit 是否为VIP用户 允许为空 Book Nvarchar(255) 系统广播 允许为空 Score Int 用户积分 允许为空
21
第四章 系统实现
系统实现是在对系统进行过详细设计之后,在物理上将相关功能在计算机上得以实现,包括程序代码的书写,各窗体的调用,对底层数据库的操作等等,它是系统开发进入尾声的阶段。
4.1程序主要页面
4.1.1系统首页
用户可以在页面上浏览到最新上架图书、推荐书籍。
4.1.2 各主要框架页面
单击页面顶部导航栏可以进入新品图书、畅销图书、推荐图书、图书分类等页面,进行浏览。以畅销图书页面例。
4.1.3图书详细资料页面
单击页面内书籍图标进图书详细资料显示页面,显示包括图书作者、出版日期、目录等在内的详细资料及会员评论内容。
4.1.4 用户登录购书页面
单击导航条中“登录”链接,或者单击左侧我的购物车内“请先登录”链接,进入页面登录。登录的用户可以进行图书购买。单击“购物车”链接,则登录用户购物车内添加选择的图书,左侧的购物车中显示购买书籍的信息。
4.1.5 购物车页面
单击左侧“购物车/结账”,进入购物车页面。
22
第四章 系统实现
4.1.6 下订单页面
在购物车页面,回到当用户满意所有选购图书时,可单击“去下订单”按钮,进入订单页面。统计购书金额及数量,并对购书数量进行最后的确认及修改。用户修改数量完毕后,单击“修改”按钮,系统自动计算购物车内所有书籍价格的总和。 4.1.7 结账页面
单击“下一步”按钮,发出订单,进入结账页面,确定收货人姓名、地址及送货、支付方式等送货信息。
4.1.8 订单完成页面
单击“提交订单”按钮,进入订单完成页面,显示购书订单的详细信息。 4.1.9 我的订单
单击左侧菜单栏内“我的订单”栏,可以获得自己的所有订单处理的状态。 4.1.10网上书店后台管理添加新书页面
网上书店管理功能页面也可以说是系统后台功能页面,主要包括3个大类10个功能对网上书店进行综合管理,左侧菜单显示后台程序所有管理功能。单击左侧菜单,页面右侧显示相应功能。以添加新书页面为例,输入新书信息,单击“添加”按钮,在数据库内录入新书信息。
4.2 IIS配置与SQL Server 数据库连接
4.2.1 II配置
IIS是Internet Information Server 的缩写,是微软提供的Internet服务器软件,包括Web、FTP、Mail等服务器。它是Windows操作系统自带的组件。
23
以下对系统进行新建虚拟目录操作:
(1) 打开“控制面板”窗口,双击“管理工具”图标,进入“管理工具”窗口。
(2) 双击“Internet服务器管理器”图标,进入“Internet信息服务”窗口。
(3) 单击“操作”目录,选择下拉菜单“新建”|“虚拟目录”命令。
(4) 弹出“欢迎”窗口,单击“下一步”按钮。
(5) 在“别名”文本框中输入映射后的名字,如wsss,单击“下一步”按钮。
(6) 在“目录”文本框中输入要映射的目录,如d:\soft\wsss,单击“下一步“,
进入设置访问权限窗口。
(7) 在这里选择正确的访问权限,再单击“下一步“按钮,即完成设置。 4.2.2创建SQL Server数据库
打开Microsoft SQL Server的“企业管理器”窗口。右击“数据库”分支,弹出右键目录。选择“新建数据库”命令,弹出“数据库属性”窗口。在“名称”文本框内输入wsss,单击“确定”按钮完成创建。
按照要求建数据库后,需要建立网站页面与后台服务器的链接,页面名称为conn.asp。以后当需要对程序中的数据库进行操作时,只需要用
命令就可以直接调用该程序打开数据库,提高程序可读性,同时也提高程序便捷性。代码如下:
<%
'打开数据库连接
dim conn,connstr
Set conn = Server.CreateObject("ADODB.Connection")'创建一个数据库链接对象conn,方便后面调用 connstr="Provider=SQLOLEDB;Data Source=(local);Initial Catalog=wsss;User ID=sa;Password=yanyan;" '创建一个数据库的recordset对象,方便以后调用
conn.Open connstr'打开数据库
%>
4.3 系统程序实现
4.3.1系统首页页面
系统首页主要分为3个部分:顶部为导航栏(head.htm),中间为首页主页面(index.asp),底部为联系页面(foot.asp),左侧为购物菜单导航栏页面(left.asp)。界面内主要显示当前登录用户个人购物信息,网上书店上架图书及推荐图书。
24
第四章 系统实现
1(顶部导航栏页面
为了使界面标准和美观,同时为了调用方便、避免重复和节约代码。将顶部头文件制作成为顶部导航栏页面(head.htm),以后通过命令直接调用。导航栏页面如图4.3.1.1所示。
图4.3.1.1
这是一个静态页面,调用不同功能页面。包含一个动态时间显示过程,页面左上角显示当前系统日期时间。采用JavaScript脚本语言实现,代码如下:
2(底部联系页面
同样为他使界面标准和美观,将底部文件制作成为底部联系页面(foot.htm),以后通过命令直接调用,页面如图4.3.1.2所示。
25
图4.3.1.2
3(系统过程页面
系统有很多页面都要调用系统过程,先将主要过程放入系统过程页面(config.asp),方便以后调用。代码如下:
<%
'***********定义环境变量***********
dim cookieName,sessionLife
'前台用户登陆后的cookie群组名
cookieName="Cwj"
'后台登陆Session生命期
sessionLife=40
'***************************子程序*********************************
'************************
'子程序名:信息提示窗口
'功能:信息提示,并作返回或者转向
'参数:
'str 提示字符串
'stype 处理类型:Back 返回 GoUrl 转向 Close 关闭
'url 转向方向
'************************
Sub MsgBox(str,stype,url)
response.write ""
End Sub
'************************
'子程序名:格式化输入字符串
'功能:消除HTML标记
'参数:
'fString 要处理的字符串
'************************
function HTMLEncode2(fString)
fString = Replace(fString, CHR(13), "")
fString = Replace(fString, CHR(10) & CHR(10), "
")
fString = Replace(fString, CHR(10), "
")
'fString = Replace(fString, CHR(32), " ")
26
第四章 系统实现
HTMLEncode2 = fString
end function
function HTMLDecode(fString)
fString = Replace(fString, "",CHR(13))
fString = Replace(fString, "
",CHR(10) & CHR(10))
fString = Replace(fString, "
",CHR(10))
'fString = Replace(fString, " "," ")
HTMLDecode = fString
end function
'************************ '子程序名:测试字符串长度
'功能:返回字符串长度
'参数:
'str 要测试的字符串
'************************ function strlen(str)
dim p_len,xx
p_len=0
strlen=0
if trim(str)<>"" then
p_len=len(trim(str))
for xx=1 to p_len
if asc(mid(str,xx,1))<0 then
strlen=int(strlen) + 2
else
strlen=int(strlen) + 1
end if
next
end if
end function
function strvalue(str,lennum)
dim p_num,x,i
if strlen(str)<=lennum then
strvalue=str
else
p_num=0
x=0
do while not p_num > lennum-2
x=x+1
if asc(mid(str,x,1))<0 then
p_num=int(p_num) + 2
else
p_num=int(p_num) + 1
end if
strvalue=left(trim(str),x)&"..."
loop
end if
end function
%>
4(系统首页主页面
首页主页面(index.asp)显示上架新书、推荐图书。同时提供图书搜索功能。首页
主页面上控件及其功能如表4.3.1所示。
27
表4.3.1 首页主页面上控件及其功能
对 象 功 能
表格 用户控制页面显示位置
图片 显示书籍封面图片
表单 提交表单,名称为form1
按钮 单击“快速搜索”按钮提交表单
单击“高级搜索”按钮进入搜索页面serarch.asp
文本框 输入待查询图书的名称
下拉框 选择系统图书种类,内容由系统初始化查询表category得到
页面代码分析如下:
<%?调用过程页面config.asp%> <%?调用过程conn.asp页面打开数据库%> <%
dim i „定义变量i
set rs=server.CreateObject("adodb.recordset") „定义一个recordset对象rs %>
.....
<%?调用过程head..htm页面,显示系统导航栏%> .....
| <%?调用left..htm页面,显示购物菜单导航栏%>
.....
, 图书高级搜索及快速搜索
创建表单提供搜索入口及下拉菜单,供用户选择搜索使用,单击“搜索”按钮实现搜索功能。代码如下: