1、网上购物系统摘要随着Internet的不断普及,人们对于互联网技术的要求已不单单是浏览一下网页,收发电子邮件,日益忙碌的人们开始追求足不出户的利用互联网这一强大的平台来实现的网上购物。对于企业来讲,无论是企业之间(B to B),还是企业和客户之间(B to C)的交易,如果能够实现网上交易将大大提高交易速度节约交易成本。近几年,随着网络数据库技术的进一步发展,使得这一设想逐渐成为现实。运用ASP技术和网络数据库原理,基于B/S模式我开发了一个网上购物系统。在我的系统中,顾客可以很方便的注册成为会员,对商品进行浏览检索,查看商品的详细资料,然后根据各人的喜好购买心仪的商品。系统会自动为顾客生成
2、订单,按照顾客所填写的信息提交订单并发货。系统管理员则可以对现有的商品进行添加和编辑,审查已注册的用户并对提交的订单进行处理。关键词:B/S模式;ASP;电子商务;网络数据库Abstract Along with the Internet of continuously universal, people are for the request of technique Internet the already and not only single is a view once web page, receive and dispatch the E-mail, increasingly b
3、usy people start pursuing the exploitation Internet that keep the house this a the mighty platform come the net that realizes on the shopping. Speak for the business enterprise, and whether is the business enterprises( B to B), or business enterprise with the customers bargain for( B to C), if can r
4、ealize the net up trade and will consumedly increase the bargain speed the economy to trade the cost. In the last few years, along with the techniques further development of network database, make this on conceiving to gradually become the actuality.Application ASP technique is with the network data
5、base principle, according to B/ S mode I developed a net on the shopping system. In my system, customer can very the convenient registration become the member, and proceeds to merchandise view index, look into favor that the merchandises detailed data, then purchase the adoring merchandise according
6、 to the everyone. System would the auto is a born order of customer, and hand over the order to erupt goods according to the information for fill inning of customer. System manager can then proceeds to increase with the order that edit, investigate already the registered customer combine right hand
7、over to proceeds to handle to current merchandise.Key words:B/ S mode; ASP; electronic commerce; network database1. 绪论1.1 问题的提出对于基于Web平台的网上购物系统,存在着一个前台应用和后台管理的问题。而无论前台还是后台,都要对数据库进行调用和操作。因此如何创建网络数据库,以及客户端如何调用服务器端的数据库成为实现网上购物的一个关键性问题。计算机技术的发展与普及,已经改变了我们的生活方式,计算机应用已逐渐渗透到社会发展的各个领域。随着计算机技术和通信技术的迅猛发展,社会资源
8、的信息化、数据的分布处理、各种计算机资源共享等应用需求推动计算机技术朝着群体化方向发展,促使计算机技术与通信技术紧密结合。Internet是目前世界上覆盖范围最大的计算机网络群体。Internet是在通信网络的基础上,以TCP/IP协议为基准、以域名地址和IP地址为标识、以网关和路由器为转换协议工具构成的网络的集合。Internet实质上是由遍布全球的各种计算机网络互连而形成的网络。Internet的出现不仅使得通信和资源共享的地理范围扩展至全球,而且随着其服务内容和应用领域的拓宽,正在改变人们的时空观。以微电子、计算机、通信和网络技术为代表的现代信息技术在经济领域的广泛应用,使得交易成本急剧
9、下降,从而导致信息替代了资本在经济发展中的主导地位。作为重要的生产要素和战略资源,通过互联网传递的大量信息使得现有的社会资源获得高效配置,社会劳动生产率大幅度提高,并推动经济结构革新和产业结构的升级。 电子商务是互联网发展日臻成熟的直接后果,是网络技术应用新的发展方向。互联网自身所具有的开放性、全球性、低成本、高效率的特点,已成为电子商务的内在特征,并使得电子商务大大超越了作为一种新的贸易形式所具有的价值。 电子商务对于社会生产力的推动作用突出表现在四个方面: (1)大幅度降低信息成本,提高信息使用效率。作为一个极为重要的商务信息载体和运送平台,电子商务降低了信息来源成本;突破行业和产品物理特
10、性的限制,使交易范围急剧放大;弥补信息的不对称性,实现交易信息互换和交易行为的虚拟市场化。从目前市场情况看,电子商城、网上书店和网上拍卖等交易行为,无不体现与传统交易相比的信息成本优势。信息成本的低廉形成了对电子商务生存的最有力的支撑。 (2)大量减少中间环节,降低销售成本和购买成本。电子商务为买卖双方在网上直接交易提供了现实可能性,缩短了供求之间的距离。绕过传统的经销商而直接与客户沟通,企业可以将需求直接转化为企业的生产指令,减少了许多中间环节,使得零库存生产成为可能。在批发领域,电子商务可以在很大程度上取代传统商业在商品流通渠道中的批发职能,使批发商的作用大大削弱。除了农业生产资料要面对众
11、多零星的农户以外,大多数生产消费者都有可能直接上网采购生产资料。而对于普通消费者,则可以通过网络购买降低购物成本。 (3)有利于形成高效流通、交换体制。电子商务构成了虚拟社会中的整个商品交易庞大网络,实体社会中商品的盲目实物移动转变为有目标的实物移动。借助于电子商务的信息沟通和需求预测,企业可以组织有效生产,形成高效流通、交换体制。政府则可以通过电子商务,将市场、企业和个人联接起来,方便地进行宏观调控和微观调控。 (4)有利于第三产业的发展。电子商务大量运用最先进的信息技术,必将推动产业结构的优化和升级,特别是促进了现代第三产业的发展,增强了经济结构自身的稳定性。电子商务以新供给创造了新需求,
12、又以新需求推动了新供给,促进了社会总供求的良性互动,推动了经济的持续稳定增长,从而延长了经济扩张期,减小了经济波动的幅度。1.2 问题的解决在这里,我采用B/S模式来实现客户端对服务器端的调用,所谓B/S模式即浏览器/服务器模式,是一种从传统的二层C/S模式发展起来的新的网络结构模式。在B/S模式中,客户端运行浏览器软件。浏览器以超文本形式向Web服务器提出访问数据库的要求,Web服务器接受客户端请求后,将这个请求转化为SQL语法,并交给数据库服务器,数据库服务器得到请求后,验证其合法性,并进行数据处理,然后将处理后的结果返回给Web服务器,Web 服务器再一次将得到的所有结果进行转化,变成H
13、TML文档形式,转发给客户端浏览器以友好的Web页面形式显示出来。而对于网络数据库的创建,则是利用ASP技术来解决。ASP(Active Server Pages动态网页)是微软公司推出的一种用以取代CGI(Common Gateway Interface通用网关接口)的技术。目前,Internet上的许多基于Windows平台的Web站点已开始应用ASP来替换CGI。 简单地讲,ASP是一个位于服务器端的脚本运行环境,通过这种环境,用户可以创建和运行动态的交互式Web服务器应用程序,如交互式动态网页,包括使用HTML表单收集和处理信息,上传与下载等等。 在电子商务中,对用户而言,进行网上信息
14、查询的目的是寻找自己需要的产品或服务,而对于商品或服务提供者来说,其目的则是向用户推销自己的产品或服务。因此,让用户通过浏览器查询服务器的后端数据库是许多Web服务提供者必需有的服务,ASP通过内置的ADODB组件来实现这一功能。可以使用ADO去编写紧凑简明的脚本以便连接到ODBC 兼容的数据库和 OLE DB 兼容的数据源。至于实现的细节,在后续部分的网络数据库章节中有详细介绍。2. 背景知识ASP技术 2.1 ASP简介ASP(Active server pages)是一种类似HTML(Hypertext Markup Language超文本标识语言)、Script与CGI(Common
15、GAteway Interface 通用网关接口)的结合体,但是其运行效率却比CGI更高、程序编制也比HTML更方便且更有灵活性,程序安全及保密性也比Script好。HTML(Hypertext Markup Language)是一种超文本标识语言,文件通过这种格式可以在互连网上载送浏览,用户只要使用网页浏览器工具就可以浏览这些文件,目前比较常用的工具包括Microsoft Internet Explorer,Netscape Communicator等,由于HTML文件都是由标签(tag)所组成,因此它比较适合制作静态网页,再者,由于先天上的限制HTML是无法直接存取数据库的,所以存取数据库
16、的工作大多是依靠CGI来处理。ASP不但可以包含HTML标签,也可以直接存取数据库及使用无限扩充的ActiveX控件,因此在程序编制上要比HTML方便而且更富有灵活性。ASP以HTML为基础,主体还是HTML代码,只是在需要ASP动态产生的地方加入ASP代码。ASP的最终显示结果也是HTML代码,可准确控制ASP的输出结果。Script(脚本)是由一组可以在WEB服务器或客户端浏览器运行的命令组合而成,目前在网页编制上比较流行的脚本语言包括 VBScript,JavaScript。这些脚本大都是在客户端运行,因此,客户端可以很清楚的取得脚本的内容。所以,就安全性而言,这些客户端的脚本语言的确有
17、危险。ASP虽然具有脚本语言的方便性,但由于他是在WEB服务器端运行,运行后再将运行结果以HTML格式传送至客户端的浏览器。因此ASP与一般的脚本语言相比,要安全的多。2.2 ASP特点ASP可以和HTML或其它脚本语言(VBScript,JavaScript)相互嵌套。 ASP是一种在WEB服务器端运行的脚本语言,程序代码安全保密。ASP以对象为基础,因此可以使用ActiveX控件继续扩充其功能。 ASP内置ADO组件,因此可以轻松的存取各种数据库。 ASP可以将运行结果以HTML的格式传送至客户端浏览器,因而可以适用与各种浏览器。2.3 ASP工作原理如果浏览器向IIS/PWS请求的是.H
18、TM文件,那么IIS/PWS会直接把文件的内容传给浏览器.但如果浏览器向IIS/PWS请求的是.ASP文件,则IIS/PWS会首先解释文件.IIS/PWS解释.ASP文件的过程中,遇到HTML标记或一般文字时会直接把读区的内容传给浏览器.但如果遇到的标记,则会把其中的内容视为程序,然后解释执行,但程序经过IIS/PWS解释执行后,其源程序代码不会传给浏览器,而只是把可显示的运行结果传给了浏览器Active Server Page技术为应用开发商提供了基于脚本的直观、快速、高效的应用开发手段,极大地提高了开发的效果。ASP脚本是采用明文(plain text)方式来编写的。 ASP脚本是一系列按
19、特定语法(目前支持vbscript和jscript两种脚本语言)编写的,与标准HTML页面混合在一起的脚本所构成的文本格式的文件。当客户端的最终用户用WEB浏览器通过INTERNET来访问基于ASP脚本的应用时,WEB浏览器将向WEB服务器发出HTTP请求。WEB服务器分析、判断出该请求是ASP脚本的应用后,自动通过ISAPI接口调用ASP脚本的解释运行引擎(ASP.DLL)。ASP.DLL将从文件系统或内部缓冲区获取指定的ASP脚本文件,接着就进行语法分析并解释执行。最终的处理结果将形成HTML格式的内容,通过WEB服务器原路返回给WEB浏览器,由WEB浏览器在客户端形成最终的结果呈现。这样
20、就完成了一次完整的ASP脚本调用。若干个有机的ASP脚本调用就组成了一个完整的ASP脚本应用。3. 系统概述3.1 系统设计思想整个系统是以ASP技术来开发,数据库的创建使用Microsoft Access 2000,对数据库的查询和调用是通过ASP内置的ADODB组件来实现的。为了便于编程,前台的操作页面和后台的数据库管理页面的设计我是分别进行的。在整个程序编写完之后,在将后台的数据库管理页面通过管理员在前台的登录来调用,这样就把前台和后台有机的连接起来,使操作更加方便。当用户以会员身份登录调用执行的是前台的操作页面,而当以管理员身份登录时,则进入后台管理页面来对数据库进行操作。而对于前台购
21、物操作中的核心部分购物篮的实现,这将在后面的功能模块设计章节中做详细阐述。3.2 系统总体结构图图3-2 系统总体结构图由图可以看出,系统是基于B/S模式开发的。3.3 系统功能描述网上购物系统分为前台管理和后台管理。前台管理包括浏览商品、查询商品、订购商品、购物车、用户信息维护等功能。后台管理包括公告管理、商品管理、订单管理、投诉管理和用户管理等模块。后台管理具体描述如下:(1) 公告管理 添加公告,包括公告标题和公告内容等; 修改公告; 删除公告。(2) 商品管理 添加商品类别; 修改商品类别; 删除商品类别。 添加商品信息,包括商品类别、名称、编号、所属公司等信息; 商品图片的上传、修改
22、和删除; 修改商品信息; 删除商品信息; 查看商品信息。(3) 订单管理 处理订单; 办理发货; 办理结帐; 删除订单。(4) 投诉管理 录入投诉的解决方法; 删除已解决的投诉; 查看投诉用户。(5) 顾客用户管理功能 注册顾客用户,包括用户名、密码等信息; 修改顾客用户信息; 删除顾客用户信息。(6) 系统用户管理功能 添加系统用户,包括用户名、密码等信息; 修改系统用户信息; 删除系统用户信息。3.4 功能模块划分从功能描述的内容可以看到,本系统可以实现六个完整的功能。根据这些功能,设计出系统的功能模块,如图:图3-4-1 网上购物系统功能模块示意图在本系统中,用户管理模块的功能比较简单。
23、在系统初始化时,有一个默认的“系统管理员”用户Admin,由程序设计人员手动地添加到数据库中。Admin用户可以创建其他的管理员信息;普通用户则可以修改自己注册信息和密码。用户管理功能模块的关系如图:图3-4-2 用户管理功能模块关系图3.5 系统流程分析前台客户购物流程如图:图3-5-1 前台客户购物流程图后台订单处理流程如图:图3-5-2 后台订单处理流程图多用户系统的工作流程都是从用户登录模块开始的,之后,对用户的身份进行认证,确认用户是否是有效的注册用户以决定用户的操作权限,从而决定用户的工作界面。3.6 系统功能模块图图3-6系统功能模块图3.7 系统开发工具开发环境:Windows
24、XP Professional IIS 5.0(Internet Information Server 5.0) Internet Explorer 6.0脚本语言:JavaScript、VBScript数据库工具:Microsoft Access 2000ASP开发工具:Microsoft Visual InterDev 6.0 网页设计:Macromedia DreamweaverMX4. 系统网络数据库的建立4.1系统数据源的设置使用ADO去编写紧凑简明的脚本以便连接到ODBC 兼容的数据库和 OLE DB 兼容的数据源。具体的操作步骤可以归纳为以下几步: 创建数据库源名(DSN) AD
25、ODB通过ODBC工作,因此要在ODBC中设置DSN(数据源名)。打开Windows的控制面板,双击ODBC的图标,然后选择文件 DSN 的属性页,单击,选择数据库驱动程序,然后单击下一步,按照屏幕的指示键入数据源文件的名称,然后单击“下一步,再单击完成创建数据源。创建数据库链接 链接用以保持一些关于正在访问的数据的动态信息,以及链接者信息。利用ADODB的成员函数Open和先前设定的DSN与数据库连接,其语法如下:SetConnect=Server.CreateObject(ADODB.Connection)/创建了链接对象Connect。 Connect.Open(DSN=dsnname;
26、UID=userID;PWD=password) /打开链接。dsnname为数据源名;userID为用户名;password为用户口令。创建数据对象 ADO中的数据对象通常保存的是查询结果。RecordSet 是ADO中最复杂的对象,有许多属性和方法,灵活运用,可以达到许多好的效果。其创建方法如下: Set RecordSet =Connect.Execute(sqtStr) ,创建并打开了对象RecordSet ,sqtStr是一个串,代表一条标准的SQL语句。例如: sqlStr=SELECT*FROM b1 Set RecordSet =Connect.Execute(sqlStr)
27、这条语句执行后,对象RecordSet中就保存了b1中的所有记录。 操作数据库,可利用Execute方便地执行数据的插入、修改、删除等操作。如执行插入操作: sqlStr=Insert Into b1Values(1,2) Connect.Execute(sqlStr)关闭数据对象和链接 在使用了ADO对象之后,一定要关闭数据对象和链接。在ASP中通过调用方法close实现关闭。 关闭创建的数据对象:Record Set .close Set Record Set=Nothing 关闭创建的链接对象:Connect. close Set Connect=Nothing 完整的程序片段: Set
28、Connect=Server.CreateObject(ADODB.Connection)/产生组件实例Connect.Open(DSN=dsnname;UID=userID;PWD=password)/连接数据库SQL=select*fromtablename SetRS=Connect.Execute(SQL)/执行查询 DoWhile Not RS.EOF/显示结果 上述是用ASP访问数据库的全过程,由于应用面向对象思想,所有操作都比较简单,用户需要注意的仅是对数据结构的了解、当前所操作的对象及对象的属性等等,只要对这些有了清晰的认识,再加上ASP强大功能,在网络上使用数据库,实现用户与
29、页面间交换信息,就再也不是什么难事了。4.2表、关系模型和数据库的概述一个数据库的信息通常组织和存储在表的形式中,各个表具有行和列。这样由行和列组成对象的项目称为数据项(又称为字段),所有数据项组成一个记录,若干个同类记录构成表文件。若干个同类记录构成表文件。若干个表以及它们的关系等用来管理数据,也叫做数据库文件。数据库加上相应的操作和管理数据库的软件,即为一个数据库管理系统(dbms),它能合理地组织和存储大量数据,并支持对于数据库表中数据的各种操作,如:更新、排序、索引、查询、列表、打印等。数据库系统是实现有组织地、动态地存储大量的相关数据,方便用户访问的计算机软件、硬件资源组成的系统,它
30、由数据库管理系统、数据库以及支撑数据库管理系统的软、硬件构成。数据库离不开数据模型。数据模型是对现实世界客观事物及其联系的描述,它反映数据项之间和记录之间的联系,在数据库技术中使用模型的概念描述数据库的结构与语义。常用的三种数据模型:层次模型、网状模型和关系模型。此外,还有面向对象模型等。关系模型把数据之间的关系看成是一个二维表关系,因为二维表关系建立在集合代数关系理论基础上的,所以,把这种建立模型基础上的数据库称为关系数据库。数据库与文件系统不同,其数据独立于程序而存在,并可以提供给不同的用户共享使用,其基本思想是对所有的数据实行统一的、集中的、独立于程序的管理。关系数据库管理系统很好地实现
31、了这一基本思想。4.3范式与建表的规范化在关系模型中,一个数据库模式是关系模式的集合。在建立书店数据库时,要按关系能好的关系模式的集合作为数据库模式,关系模式的优劣,可以用模式的范式(normalforms,简记为NF)。第一范式(1NF)如果关系模式R的每个关系r的属性值都是不可分的原子值,那么称R是第一范式(1NF)的模式,r是规范化关系。例如教师模式R(NAME,ADDRESS,PHONE),如果一个教师家中装了两部电话,那么关系中至少要出现两个元组,以便存储两个号码。1NF的模式是关系数据库最基本的要求,远不是理想模式。第二范式(2NF)FD函数依赖(functional dependency)定义:设有关系模式R(U),X和Y是属性集U的子集,FD是开为X Y的一个命题,只要r是R的关系,对r中的任意两个元组都有“X值相等蕴涵Y值相等”,那么FD X Y在关系模式中成立。“XY”读作“X函数决定Y”或“Y函数依赖于X”。X Y反映了属性集X和Y之间的联系,对于每一个X值,只有唯一的Y值与之对应。我们把关系模式R的属性分为两类:一类是键的属性,称为主属性;另一类是不属于任何键的属性,称为非主属性。我们把FD分成完全FD和局部F
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1