会员 | 注册 | 毕业设计定做
QQ:1052602713
ASP毕业设计论文毕业设计 > ASP毕业设计论文 >

电子商务网站的建设毕业设计和论文

文章来源:淘论文网   发布者:毕业设计   浏览量:
摘 要
本文通过电子商务网站的建设以实现对商业零售企业提供信息化管理,并建立了基于网络订货系统和网络出售系统。文中着重论述了系统功能与实现、数据流程及存储,包括商品目录、会员注册、网上订货与购物、商品查询、后台数据库管理等。
结合本系统的要求,对数据库管理系统、SQL语言原理、ASP设计平台,ASP数据库技术进行了较深入的学习和应用,主要完成对网上购物系统的需求分析、功能模块划分、数据库模式分析,并由此设计了数据库结构和应用程序。系统运行结果证明,本文所设计的网上购物系统可以满足购物者和高级管理员双方面的需求。
关键词  网上购物;ASP;数据库
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Abstract
Through e-commerce site in order to achieve the construction of commercial retail enterprises to provide information management, and established a web-based ordering system and network marketing system. This paper focuses on the function and implementation of systems, processes and data storage, including a catalog, membership registration, online ordering and shopping for goods, background database management. 
With the requirements of the system, database management system, SQL language principles, ASP design platform, ASP database technology for a more in-depth study and application of the completion of major online bookstore system needs analysis, functional modules of the database model analysis, and that the database structure and design applications. The results proved that the system's operation, the paper is designed to meet the online bookstore system and senior managers to double the demand
 
Keywords Internet shopping, ASP, database
 
 
 
 
 
 
 
 
目 录
前  言 3
 
第一章 概  述 4
1.1  系统说明 4
1.2  系统特点 4
1.3  系统功能简介 5
1.3.1 基本功能 5
1.3.2  高级功能 5
 
第二章   开发环境介绍 6
2.1 系统运行环境配置 6
2.2  ASP简介 6
2.2.1 ASP的优点 7
2.2.2 简介ASP的6大对象 8
2.2.3 ASP的使用环境 10
2.2.4  配置Microsoft IIS 10
2.2.5 ASP的脚本语言 11
2.3  动态网页开发工具Dreamweaver MX简介 14
2.4  系统数据库介绍 14
2.4.1 数据库的概念 14
2.4.2  SQL中的常用语句: 16
 
第三章  需求分析 20
3.1  开发背景 20
3.2  系统功能分析 20
3.3  系统结构分析 21
3.3.1  逻辑结构 21
3.3.2  物理结构 22
 
第四章  数据库设计 23
4.1数据表的介绍 23
4.2  数据的加密介绍 29
4.3   建立数据库连接 31
 
第五章 详细设计 32
5.1用户模块设计概述 32
5.1.1 系统原理 32
5.1.2用户模块的程序流图和数据流图 34
5.2用户模块分析 34
5.3  主要功能的实现 36
5.3.1主页面 36
5.3.2 新用户注册 44
5.3.3  用户登陆 53
5.3.4  购物结算 56
 
参考文献 63
 
 
 
 
 
 
 
 
 
 
 
前  言
 
 随着Internet国际互联网的发展,越来越多的企业开始建造自己的网站。基于Internet的信息服务,商务服务已经成为现代企业一项不可缺少的内容。很多企业都已不满足于建立一个简单的仅仅能够发布信息的静态网站。现代企业需要的是一个功能强大的,能提供完善的电子商务服务的动态商务网站。
ASP(Active Server Pages)是Microsoft提出的一种网络服务器端编程环境。ASP已经成为开发动态网站的重要而快速、有效的工具。ASP强大的功能使之成为一种优秀的服务器技术。随着网络技术的日益成熟,ASP技术在网络编程中也变得越来越重要。所以,在我们的毕业设计中,我们采用了ASP作为开发工具,构建了一个能实现简单的电子商务的小型动态商务网站——网上商品出售系统,该系统能实现用户的注册、登录功能;能够实现商品的查询,订购等功能。该系统基本上具备一个网上商品出售系统应该具备的功能,该设计项目基本上体现了构建一个动态商务网站所需要的技术,可以说,目前的大型商务网站也就是我们这个小型网站在内容上的扩充和重复。
通过这次的毕业设计,我了解了目前流行的动态商务网站的构成和运作原理,掌握了用ASP构建动态网站的相关知识和技术原理,锻炼了自己的动手实践能力。更重要的是,通过这次的毕业设计,我培养出了刻苦钻研的学习精神和严肃认真的学习态度,这对我以后的学习和工作有很大的益处。
 
 
 
 
 
  
第一章 概  述
1.1  系统说明
本系统是一个中小型的电子商务系统----网上商品超市,可以为各类用户提供方便的在线购物环境,符合目前国内流行的电子商务模式。用户可以在系统中实现注册、浏览商品、搜索查询商品、下定单、处理定单等功能;管理员可以通过用户管理、定单管理、商品管理等管理功能来对系统进行维护更新。
网站的组成有以下几个子系统组成:
1. 主页,显示欢迎界面,提供近期的商品。
2. 购物车,处理订购并显示想要订购的商品。
3. 查询系统,通过商品类别、商品名称、出产地址来查询是否有自己需要的商品。
4. 用户注册系统,处理新用户的注册和老用户购物时的确认。
5. 管理员系统,通过管理员对系统进行管理和定单处理。
 
1.2  系统特点
1. 本系统完全基于Web技术,只要能连接Internet,就能访问本系统。
2. 采用ASP加access开发,具有管理方便,代码简单易懂,体积小巧的特点。
3. 可以完全通过网页登录管理系统,维护方便。
4. 各种功能模块独立性强,可以根据需要任意组合。
5. 具有清新简洁方便的界面,操作简单。
6. 支持所有的Windows系列操作系统。
 
1.3  系统功能简介
1.3.1 基本功能
游客可以浏览网站
用户注册
用户登陆
用户能够浏览网站
提供搜索引擎,使用户能够按特定的条件对所需商品进行搜索
用户能够对自己的注册资料进行修改
用户下定单购买商品
用户处理定单
用户查看定单处理步骤
 
1.3.2  高级功能
管理员登录
管理员权限:商品管理(添加/删除商品、商品类别管理、商品信息处理)、管理用户资料、管理定单、处理定单、
用户可随时修改自己的密码和其他个人信息;  
管理员在线编辑,管理工作轻松随意;
 
 
 
第二章   开发环境介绍
 
2.1 系统运行环境配置
操作系统:Windows 9X、Windows NT Workstation/Server 4.0以上、Windows 2000 Server/Professional、Windows XP Professional。
CPU:没有很高的要求,只要能够顺利运行Windows系列操作系统就可以了。当然,CPU的处理速度越快,运行ASP代码的效率越高。
内存:最低配置32MB,建议使用64MB以上内存,如果使用Windows 2000或Windows XP建议使用128MB以上内存。
硬盘空间:至少需要50MB以上的硬盘空间来安装所需的组件。
   运行ASP的服务器端要求:(如表2.1所示)
  
操作系统 需要安装的Web Server
Windows 98 PWS 4.0以上
Windows NT 4.0 Server IIS 4.0以上
Windows 2000 IIS 5.0以上
Windows XP IIS 5.0以上
表2.1
 
 
 
 
 
 
 
 
2.2  ASP简介
 
ASP(Active Server Pages)实质是一种服务器端脚本环境。ASP脚本呈现将在服务器端运行。客户端只要使用可执行HTML代码的浏览器,即可浏览通过ASP设计出来的页面内容。当程序执行完后,服务器仅将执行的结果返回给客户端浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。
ASP并不是一种纯粹的编程语言,它使用的语言是:VBScript和Jscript语言。在一个ASP应用程序中可以用其中的一种脚本语言,也可以结合这两种脚本语言使用。
 
2.2.1 ASP的优点
(1) 开放性
在IIS上,并不需要开发者使用一个专有的脚本语言来生成网络应用程序,实际上Active Server Pages包括了对VBScript和JavaScript/Jscript的本机支持。通过第三方组合组件,它还可以使用其他语言(如Perl、REXX和Tcl)。多个脚本语言甚至可以在相同的ASP文件中交替使用并相互调用。而ActiveX Server组件实际上可以用任何语言编写,这些语言包括Java、Visual Basic、C++、COBOL等等。
 
(2)易操作性
ASP使HTML设计人员可以在服务器上方便地“激活”他们的Web页,可以立刻对定制化网页和简单的应用程序进行开发。以往需要用Perl或C编写的复杂的CGI程序来完成的功能(如数据库连接),现在若使用ASP则只要几行简单的代码就能实现。
 
(3)程序与外观分离
通过使用脚本和组件,Active Server Pages允许用户将编程工作与一个网页的设计和其他工作分离开来。这就可以确保开发者能够将主要的精力用来考虑编写程序的逻辑,而不必担心外观是怎样的。同时,它也使那些从事外观设计的人员可以利用一些工具来对网页进行修改,而不用过于关心编程问题。
 
(4)非手工编译
ASP的即时编译系统在被请求时自动对ASP源文件重新编译,并将其载入服务器的高速缓存中。因此,开发者对ASP文件的修改可在浏览器中立即得到反映,只需要简单地保存该文件并在浏览器中刷新即可。
 
(5)浏览器独立性
ASP提供了一种浏览器中枢方案来完成应用程序的设计工作。因为用于生成动态内容的脚本可以在服务器上执行,所以开发者不必担心客户用什么浏览器来浏览网点.
2.2.2 简介ASP的6大对象
ASP的编辑环境要求很底,任何一种文本编辑器都可以编写ASP应用程序。ASP强大功能的实现离不开它的6个内部对象,其6大对象如下:
 
◆Application对象
Application对象是在为响应一个ASP页的首次请求而载入DLL时创建的,它提供了存储空间用来存放变量和对象的引用,可用于所有的页面,任何访问者都可以打开它们。
 
◆Request对象
Request对象为脚本提供客户端在请求一个页面或传送一个窗体时提供的所有信息,这包括能够标识浏览器和用户的HTTP变量,存储他们的浏览器对应于这个域的cookie,以及附在URL后面的值(查询字符串或页面中<Form>段中的HTML控件内的值)。它也给我们提供了通过Secure Socket Layer(SSL)或其他的加密通信协议访问证书的能力,并提供有助于管理连接的属性。
 
◆Response对象
Response对象用来访问所创建的并返回客户端的响应。它为脚本提供了标识服务器和性能的HTTP变量,发送给浏览器的信息内容和任何将在Cookie中存储的信息。它也提供了一系列用于创建输出页的方法,如无所不在的Response.Write方法。
 
◆Server对象
Server对象提供了一系列的方法和属性,在使用ASP编写脚本时是非常有用的。最常用的是Server.CreateObject方法,它允许我们在当前页的环境或会话中在服务器上实例化其他COM对象。还有一些方法能够把字符串翻译成在URL和HTML中使用的正确格式,它通过把非法字符转换成为正确、合法的等价字符来实现。
 
◆Session对象
Session对象是在每一位访问者从Web站点或Web应用程序中首次请求一个ASP页时创建的,它将保留到默认的期限结束(或者由脚本决定终止的期限)。它与Application对象一样提供一个空间用来存放变量和对象的引用,但只能供目前的访问者在会话的生命期中打开的页面使用。
 
◆ObjectContext对象
ObjectContext对象可以用来操控ASP的执行。这种执行过程Microsoft Transaction Server(MTS)来进行管理。
可以把这些对象看作是基于ObjectContext对象的一个层次关系的成员,这有助于理解它们与接受和响应客户请求的过程之间的关系,如图2-1所示。图中表现了ASP和创建及服务于ASP页的过程之间的关系。
 
图2-1  
2.2.3 ASP的使用环境
ASP的使用环境,就是IIS,ASP网页技术是一种需要服务器端支持的技术。它的执行过程是:
(1) 浏览器端提出HTTP的请求送到服务器端,Web服务器先检查网页文件的类型,如果是.asp扩展名的文件,就提出ASP文件请求,Web确定读取并处理请求文件。
(2) Web检查所要求的文件有没有被请求或有没有更新,以决定是否重新分析。IIS的工作是这样分工的:脚本代码是由默认的脚本编程引擎如VBScript完成,然后经引擎翻译转换成服务器能执行的命令,而IIS则进一步为送入的Active对象处理输入和输出,出错信息的输出也是有IIS产生的。
 
 
2.2.4  配置Microsoft IIS
1、名词解释
(1)IE (Internet Explorer)
 Microsoft Internet Explorer是Web浏览器。Internet Explorer是导航和访问或浏览Web中的信息的工具。
(2)IIS(Internet Information Server) 
Microsoft Internet Information Server是允许在公共Intranet或Internet上发布信息的Web服务器。
ASP的开发依赖于IIS,IIS可在多种平台上运行:Windows2000全系列包括Professional、server、Advanced Server三个版本,Windows NT Server,Windows NT-Workstation 和Windows95/97/98上的 Personal Web Server(PWS)等平台上都可以。
2、IIS是如何工作的
Web是 基础的请求和响应系统。Web浏览器通过将URL发送给Web服务器请求信息。Web服务器通过返回超文本标记语言(HTML)页面响应。
 
3、安装IIS
我安装的是Windows2000 Professional版本的,所以以Windows2000 Professional版来介绍IIS的安装方法。
(1)在操控面版中选择“添加/删除程序”
(2)点击“添加/删除Windows组件”
(3)确认只选中第一项Internet信息服务(IIS),然后点击下一步即可自行进行安装。
(4)系统配置安装完成后,就会弹出一个安装“完成”的对话框来提示安装完成,只要点击“完成”即可。这样IIS安装完毕。
 
4、    I I S的测试
打开IE浏览器,在地址栏中输入localhost或者127.0.0.1,如果能出现“Windows 2000”画面,表明IIS安装成功,这是服务器端安装了Windows 2000时的测试结果。
 
2.2.5 ASP的脚本语言
在这里我们会了解到HTML语言、VBscript和Jscript的脚本语言。
 
1、HTML语言
(1)HTML文件由浏览器解释,通过网络传输协议,可以从一台机器传输到另一台机器上。打开Netscape Navigator或Microsoft explorer浏览器,在地址栏中输入所需要的网址,就可以浏览用HTML写的网页。
(2)HTML文件和其他的文件不同,因为HTML文件中有它自己的标记。如下示:
<html>
<head>
<title> title </title>
</head>
<body>
</body>
</html>
<html>……</html>等是成对出现的,此种标记称为容器标记。所有的文本都必须放在<body>和<ody>之间。
2、VBscript语言
VBScript与Basic语言有密切关系。如果你熟悉BASIC,你将会发现VBScript很容易学习和使用。VBScript是Microsoft Visual Basic的简化版本。
VBScript是一种脚本语言。这意味着这种语言比BASIC语言的成熟版本容易使用又难于使用。编制简单的程序时,脚本语言是容易使用的。脚本语言的句法比较简单。但是,简单的句法也使开发大的应用程序变得很困难。
你可以在HTML文件中直接嵌入VBScript脚本。这使你能够扩展HTML,使它不仅仅是一种页面格式语言。带有VBScript脚本的网页在每次下载到浏览器时都可以是不同的,而且可以对用户的操作作出反应。
VBScript是Active Sever Pages的缺省语言。你也可以在ASP网页中使用其它脚本语言,如Jscript(将在第九章中讨论),Perl,或者REXX(由IBM UK实验室的Michael Cowlishaw所创的一种语言)。
VBScript既可以作为客户端编程语言,也可以作为服务器端编程语言。客户端编程语言是可以由浏览器解释执行的语言。Java和Jscript/JavaScript也可以作为客户端编程语言。当一个以这些语言中的任意一种编制的程序被下载到一个兼容的浏览器中时,浏览器将自动执行该程序。
客户端编程语言的优点是浏览器完成了所有的工作,这可以减轻服务器的负担。而且客户端程序运行起来比服务器端程序快得多。当一个浏览器的用户执行了一个操作时,不必通过网络对其作出响应,客户端程序就可以作出响应。
3、JScript语言
Jscript是微软的Java Script语言的开发工具,如果你已经掌握了Java Script,你对Jscript会非常熟悉,除了一些微小的差别,Jscript与Java Script几乎完全相同。
JScript可以作为服务器端编程语言,也可以作为客户端编程语言。作为客户端编程语言,可以使客户端的浏览器处理某些工作,从而减轻了服务器的负担,而且不用向服务器提交信息,也不需要从服务器获得信息,所以效率是很高的。大多数浏览器艘适用于JScript语言,可见,JScript是适合于多种操作系统的。
Jscript与Java不是同一种语言,虽然Jscript的名字中含有一个J,它会使人们产生一种强烈的感觉,以为这两种语是非常相似的,然而Java是一种真正的编程语言,而Jscript只是一种脚本语言。
Jscript可以用来完成VBScript所能完成的任何脚本任务。然而在某些特定情况下,有理由使用Jscript 来代替VBScript。即使几乎所有的Active Server Pages脚本都可用VBScript也可用Jscript 来写,但某些脚本用某种语言写会比用另一种来写要简单得多。这两种语言之间还存在一些重大的差别
更进一步说,可以混合使用两种脚本语言来编写你网点上的Active Server Pages。你可以用Jscript来写某些Active Server Pages,而用VBScript来写另一些,这取决于哪种语言更合适。而且,你可以在同一个Active Server Pages中加入分别由两种语言写的脚本
Jscript 可用作客户端或服务器端的编程语言。客户端编程语言可以在诸如Netscape Navigator 或 Microsoft Internet Explorer 的浏览器上得到解释和执行。另一个客户端编程语言的例子是Java,当用这些语言写的程序被兼容的浏览器读入时,浏览器自动执行这个程序。
客户端编程语言的有利之处在于浏览器处理了全部工作,这就减轻了服务器的负担。客户端程序运行起来也比服务器端程序快得多。当浏览器的用户做出某种行为时,对此的反应不需通过网络进行传输,客户端程序可对它作出反应。
Jscript用作客户端编程语言是非常好的,与VBScript不同,Jscript创建的客户端脚本能被现有的大部分浏览器识别。Netscape Navigator 和 Internet Explorer都可以解释和执行包括Jscript 的HTML文件。
然而,与VBScript相同,Jscript 也是服务器端编程语言。服务器端编程语言在提供网点服务的服务器上执行,而不是在接收网页的浏览器上执行。服务器端编程语言在你的网点计算机上完成所有这些工作,承受所有的负担。
由于JScript不是ASP的默认脚本语言,所以要使用时必须事先声明,如:
 
<Script language=”JavaScript”>
</Script>
语句<Script >…</Script>在这里声明使用JScript。
 
2.3  动态网页开发工具Dreamweaver MX简介
Macromedia Dreamweaver MX是 建立 Web 站点和应用程序的专业工具。 它将可视布局工具、应用程序开发功能和代码编辑支持组合为一个功能强大的工具,使每个级别的开发人员和设计人员都可利用它快速创建界面吸引人并且基于标准的站点和应用程序。 从对基于 CSS 的设计提供领先的支持到手动编码功能,Dreamweaver 在一个集成和高效的环境中为专业人员提供了所需的工具。 开发人员可以将其选择的服务器技术与 Dreamweaver 配合使用,建立将用户连接到数据库、Web 服务和旧式系统的强大 Internet 应用程序。
Dreamweaver MX 是一款专业的 HTML 编辑器,用于对 Web 站点、Web 页和 Web 应用程序进行设计、编码和开发。无论您喜欢直接编写 HTML 代码的驾驭感还是偏爱在可视化编辑环境中工作,Dreamweaver 都会为您提供帮助良多的工具,丰富您的 Web 创作体验。
利用 Dreamweaver 中的可视化编辑功能,您可以快速地创建页面而无需编写任何代码。不过,如果您更喜欢用手工直接编码,Dreamweaver 还包括许多与编码相关的工具和功能。并且,借助 Dreamweaver,您还可以使用服务器语言(例如 ASP、ASP.NET、ColdFusion 标记语言 (CFML)、JSP 和 PHP)生成支持动态数据库的 Web 应用程序。
 
2.4  系统数据库介绍
2.4.1 数据库的概念
   数据库是以数据(数据就是对客观事物的符号表示,是存储在计算机中的模拟客观事物的一系列信息。对于计算机科学而言,数据的含义极为广泛,凡是可存储的信息,如文本、图象、声音等都可以通过二进制编码而形成数据)为对象,指为了满足某种特定应用的需要,按照一定的数据模型在计算机系统中组织、存储和使用数据的数据集合。数据库系统是管理大量的、持久的、可靠的和共享的数据的工具。
数据库有以下特点:
(1)集成性:数据有两层含义,一个是数据本身,一个是数据之间的关系。集成就是指把数据集中到一起来,按照一定的结构形式进行存储,并通过一系列的机制约束数据 之间的关系,避免数据重复或不合要求。
(2)量大性:数据库中存放的数据量一般都比较庞大,不能同时在内存中全部调用,而只能通过外部存储器存储,通常使用大容量的可移动磁盘或硬盘等装置。
(3)共享性:指多个不同的用户,为了不同的目的,可以使用不同的语言,通过不同的方法,访问同一个数据库,而访问的范围、可执行的操作会有所区别。数据库系统会提供相应的机制,保证这种共享在有序的条件下进行,可以避免因为同步而造成的错误。
(4)持久性:一般来说,数据库中是数据都需要长期保存。
 
2.4.2  SQL中的常用语句:
 
(1)添加语句:向表中添加一个新记录。
Insert  table(column)values(‘somedata’)
(2)删除语句:从表中删除一条或多条语句。
Delete table where first=’deleteme’
(3)更新记录:更改表中已经存在的一条记录或多条记录。
Updata {table name}[{ table name }]where clause
(4)用select创建记录和表
insert table(first_column,second_column)
select another_first_column,another_sencond_column
from anothertable
where another_first_column=’copy me’
这条语句从anothertable拷贝记录到 table中,只有 anothertable中字段为another_first_column的值为copy me的记录被拷贝。
 
 
 
 
 
 
 
 
 
第三章  需求分析
3.1  开发背景
随着时代的发展,信息技术、Internet/Intranet技术、数据库技术的不断发展完善,网络进程的加快,传统的购物方法也越来越不能满足人们快节奏的生活需求,使得企业的IT部门已经认识到Internet的优势,电子商务就是在这样一个背景下产生发展起来的。伴随着电子商务技术的不断成熟,电子商务的功能也越来越强大,注册用户可以在网上搜索购买到自己想要的各种商品,初步让人们体会到了足不出户,便可随意购物的快感。我的毕业设计也就正是一个电子商务系统的开发---网上商品出售系统。
 
3.2  系统功能分析
我所负责的用户模块部分的主要功能如下:
1.注册
作为一个电子商务,最基本的功能肯定就是注册了。因为只有注册用户才能在网站内订购自己想要购买的商品。
2.登陆
为了能更方便地使用网站的各项功能,用户登录也是必不可少的。当用户登录以后,便可进行查阅/更改自己的个人资料、修改/处理个人定单等操作。
3.注销
若用户登录后要离开网站,可注销个人帐号,以防止他人修改或使用本人帐号。 
4.购物车
当用户选好自己想要的商品后可把商品放入购物车中,购物车将自动产生相应的定单。当然,用户也可以从购物车里删除掉选好的商品,而相应定单的也会删除。
5.查询商品
 查询商品可以说是一个网站非常重要的一个功能,通过这一功能,用户可以按照某些特定的条件搜索自己想要购买的商品,这无论为一般用户还是管理员都提供了极大的方便。
6.用户资料修改
用户可以在登陆后使用用户个人资料修改功能对自己的一切信息进行修改,密码修改也包括在其中。也可以对用户邮寄/付款资料、收货资料等信息进行修改补充。       
 
3.3  系统结构分析
3.3.1  逻辑结构
网上商品出售系统的特点就是利用Browser/Server(B/S)结构,提供了一个网络平台,让花费者只要上网就可以实现商品的在线查看,商品的在线查找,商品的在线购买,商品订单的在线管理等功能。系统的优势在于系统简单、功能强大、扩展能力良好以及能够方便的跨地域操作等性能。系统的网络应用原理示意图如图3.1所示:
 
 
 
 
 
 
 
 
 
图3.1
 
3.3.2  物理结构
系统实现的物理结构如图3.2所示:
 
 
 
 
 
 
 
 
 
图3.2
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
第四章  数据库设计
4.1数据表的介绍
 
本系统数据库的功能主要是存储网站中所有数据,以便进行操作。
本系统的数据库文件名为db.mdb,保存在系统文件的db子目录中。它主要由Admin、Category、Delivery、Orders、Product、Sorts、Review、User八个表组成。下面将逐一介绍这八个表的意义和功能:
 
Manage_User该表比较简单,主要用来存储论坛管理员的帐号和密码,如图4-1。该表的结构如表4-1所示:
 
 
图4-1
 
表4-1    数据表“Manage_User”的结构
 
Class_1
该表存储了商品的大类别信息,如图4-2。该表结构如表4-2所示:
 
 
图4-2
 
表4    数据表“class_1”的结构
 
 
Class_2
 
该表存储了小类别,继承大类表数据,如图4-3。该表结构如表4-3所示:
 
图4-3
 
表4-3    数据表“class_2”的结构
OrderList
该表存储了客户送货的资料,如图4-4。该表结构如表4-4所示:
 
 
图4-4
 
表4-4    数据表“orderlist”的结构
 
 
 
 
 
 
 
 
 
Product
该表存储了商品的详细信息,如图4-6。该表结构如表4-6所示:
 
 
图4-6
 
表4-6    数据表“product”的结构
 
RegUser
该表存储了用户的个人详细信息,如图4-7。该表结构如表4-7所示:
 
图4-7
 
表10    数据表“reguser”的结构
 
ShopList
该表存储了订单表信息,如图4-8。该表结构如表4-8所示:
 
 
图4-8
 
表4-8   数据表“shoplist”的结构
 
 
 
 
 
 
 
 
4.2  数据的加密介绍
现在网络上一般的网站,稍微完善一点的,往往都需要用户先注册,提供用户帐号、密码等信息以后,成为网站栏目的注册用户,才可以享受网站一些特殊栏目提供的信息或者服务。电子商务网站,用户需要购买商品,就一定需要登陆,登陆信息对于用户和网站都是很重要的资源,不能随意透露,更加不能存在安全上的隐患,所以有必要对数据进行加密。
在数据库中建立一个用于存放用户信息的表,当用户登录或者提交资料的时候,程序将用户填写的信息与表中的信息对照,如果用户账号和密码都准确无误,那么说明这个用户是合法用户,通过注册;反之,则是非法用户,不许通过。然而这样做并不是真正的安全,为了增加安全性,我们有必须对数据库中的资料进行加密,这样,即使有人得到了整个数据库,如果没有解密算法,也一样不能查看到数据库中的用户信息。
在现阶段,我们一般认为存在两种加密方法,单向加密和双向加密。双向加密是加密算法中最常用的,它将我们可以直接理解的明文数据加密为我们不可直接理解的密文数据,然后,在需要的时候,可以使用一定的算法将这些加密以后的密文解密为原来可以理解的明文。双向加密适合于隐秘通讯,比如,我们在网上购物的时候,需要向网站提交信用卡密码,我们当然不希望我们的数据直接在网上明文传送,因为这样很可能被别的用户“偷听”,我们希望我们的信用卡密码是通过加密以后,再在网络传送,这样,网站接受到我们的数据以后,通过解密算法就可以得到准确的信用卡账号。单向加密刚好相反,只能对数据进行加密,也就是说,没有办法对加密以后的数据进行解密。可能我们立即就会想,这样的加密有什么用处?不能解密的加密算法有什么作用呢?在实际中的一个应用就是数据库中的用户信息加密,当用户创建一个新的账号或者密码,他的信息不是直接保存到数据库,而是经过一次加密以后再保存,这样,即使这些信息被泄露,也不能立即理解这些信息的真正含义。我们就采用了单向加密的加密算法,其中MD5就是采用单向加密的加密算法。
MD5的全称是Message-Digest Algorithm 5,在90年代初由MIT的计算机科学实验室和RSA Data Security Inc发明,经MD2、MD3和MD4发展而来。
Message-Digest泛指字节串(Message)的Hash变换,就是把一个任意长度的字节串变换成一定长的大整数。请注意我使用了“字节串”而不是“字符串”这个词,是因为这种变换只与字节的值有关,与字符集或编码方法无关。
MD5就是采用单向加密的加密算法,单向加密只能对数据进行加密,也就是说,没有办法对加密以后的数据进行解密。在实际中的一个应用就是数据库中的用户信息加密,当用户创建一个新的账号或者密码,它的信息不是直接保存到数据库,而是经过一次加密以后再保存,这样,即使这些信息被泄露,也不能立即理解这些信息的真正含义。对于MD5而言,有两个特性是很重要的,第一是任意两段明文数据,加密以后的密文不能是相同的;第二是任意一段明文数据,经过加密以后,其结果必须永远是不变的。前者的意思是不可能有任意两段明文加密以后得到相同的密文,后者的意思是如果我们加密特定的数据,得到的密文一定是相同的。
 
 
 
 
 
 
4.3   建立数据库连接
 
1、后台服务器配置
 
本系统使用了Microsoft的IIS5.0作为系统服务器。
 
2、  后台数据库的配置
   本系统采用access连接数据库功能,代码如下:
'打开数据库连接
<%
   dim conn   
   dim connstr
   'on error resume next
   connstr='DBQ='+server.mappath('data/data.mdb')+';DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};'
   set conn=server.createobject('ADODB.CONNECTION')
   if err then 
     err.clear
   else
        'conn.open Application('ConnectString') 
        conn.open connstr
        if err then 
           err.clear
        end if
   end if
%>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
第五章 详细设计
5.1用户模块介绍
5.1户模块设计概述
5.11 系统原理
   本系统的开发是基于现在电子商务应用最广的B/S(Browser/Server)既浏览器/服务器结构,起原理图示如图5.1所示
 
 
图5.1
 
网上商品出售系统的主要体系结构包括:
数据服务器
WEB服务器
后台管理平台
客户端
 
应用系统体系设计主要考虑的业务技术因素包括:
业务处理方法
数据处理量,存储量
应用功能设计
服务器设计
存储设计
安全设计
5.12用户模块的程序流图和数据流图
  本系统是由我来负责用户模块的设计 ,其主要功能的程序流图和数据流图我设计如图5.2所示:
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
图5.2
5.2户模块分析
电子商务网站可简单的划分为2个部分,如图5.3所示:
 
 
 
 
 
图5.3
 
 
 
 
 
 
 
 
5.3 主要功能的实现
5.3.1用户模块主页面
 
   在主页面中我们可以阅览到网站的部分新到商品和部分热门商品,可以在商品搜索中通过快速搜索功能搜索本网站拥有的商品,也可以看到本网站最新的商品信息,主页面如图5.4所示:
 
图5.4
在主页中,我们可以看到网站部分商品,商品表中的“商品名”、“品牌”、“定价”、“优惠价”、“会员价”、“商品描述”等详细信息都是和数据表“product”中的相关内容相连接的。 在所有的页面中只要涉及商品的相关信息,都是调用数据库的Product表中的储存信息。
5.3.2 新用户注册
 
图5.5
图5.6所示:
 
图5.6
   用户在填写完信息后即可提交信息,如果发现填写的信息有误可以马上点击“清除”重添,用户最好记住自己所添写的信息,特别是“密码提示”和“密码答案”,因为这可以为你找回密码。在提交的过程中将会有一个脚本语言函数对用户提交的信息的要求及信息格式的正确性进行判断,其函数代码如下:
<script language='JavaScript'>
<!--
function form1_onsubmit() 
{
if (document.form1.methodflag.value == '1')// || document.form1.methodflag.value == '3')
{
document.form1.action = 'mbrregdetail.asp'
}
else
{ document.form1.action = 'reguser3.asp'
 
if (chkspc(document.form1.name.value)==0)
{ alert('请填写您的姓名。');
document.form1.name.focus();
return false;
}
 
if ((window.form1.sex[0].checked == 0)  &&  (window.form1.sex[1].checked == 0  ))
{ alert('请选择您的性别。');
return false;
}
if ((chksafe(document.form1.name.value)==0)||(fucCheckLength(document.form1.name.value)>20))
{ alert('请填写正确的姓名。');
document.form1.name.focus();
return false;
}
 
if (fucCheckLength(document.form1.pwd.value)<4) 
{ alert('密码必须大于4位')
document.form1.pwd.focus();
return false;
}
if ((chksafe(document.form1.pwd.value)==0)||(fucCheckLength(document.form1.pwd.value)>18))
{ alert('请填写正确密码。')
document.form1.pwd.focus();
return false;
}
if (document.form1.PasswordConfirm.value!=document.form1.pwd.value)
{
alert ('请确认您的密码。');
document.form1.PasswordConfirm.value='';    
document.form1.pwd.value='';
document.form1.pwd.focus();
return false;
}
if (chkspc(document.form1.question.value)==0)
{ alert('请填写您的密码提问。');
document.form1.question.focus();
return false;
}
if ((chksafe(document.form1.question.value)==0)||(fucCheckLength(document.form1.question.value)>50))
{ alert('请填写正确的密码提问。');
document.form1.question.focus();
return false;
}
if (fucCheckLength(document.form1.answer.value)<4) 
{ alert('提示问题答案必须大于4位')
document.form1.answer.focus();
return false;
}
if (chkspc(document.form1.answer.value)==0)
{ alert('请填写密码提示问题答案。');
document.form1.answer.focus();
return false;
}
if ((chksafe(document.form1.answer.value)==0)||(fucCheckLength(document.form1.answer.value)>50))
{ alert('请填写正确的密码提示问题答案。');
document.form1.answer.focus();
return false;
}
 
if ((chkspc(document.form1.email.value)==0) || (chkemail(document.form1.email.value)==0))
{ alert ('请填写正确的e-mail地址。');
document.form1.email.focus();
return false;
}
if ((chksafe(document.form1.email.value)==0)||(fucCheckLength(document.form1.email.value)>40))
{ alert ('请填写正确的e-mail地址。');
document.form1.email.focus();
return false;
}
if (chkspc(document.form1.haddr.value)==0)
{ alert ('请填写您的收货地址。');
document.form1.haddr.focus();
return false;
}
if ((chksafe(document.form1.haddr.value)==0)||(fucCheckLength(document.form1.haddr.value)>200))
{ alert ('请填写正确的收货地址。');
document.form1.haddr.focus();
return false;
}
if (chkspc(document.form1.postcode.value)==0)
{ alert ('请您填写邮政编码。');
document.form1.postcode.focus();
return false;
}
if ((chksafe(document.form1.postcode.value)==0)||(fucCheckLength(document.form1.postcode.value)>15))
{ alert ('请填写正确的邮政编码。');
document.form1.postcode.focus();
return false;
}
 
if ((document.form1.usephone.value=='') || (chkspc(document.form1.usephone.value)==0) || (fucCheckLength(document.form1.usephone.value)>30)||(fucCheckTEL(document.form1.usephone.value)==0))
{
alert('您的常用电话号码填写有误。');
document.form1.usephone.focus();
return false;
}
for (lgth=0;lgth<=document.form1.pwd.value.length;lgth++)
{ if ( (document.form1.pwd.value.charCodeAt(lgth)>128)  || (document.form1.pwd.value.charAt(lgth)==''') )
{ alert('请不要输入中文密码或者单引号!');
document.form1.pwd.focus();
return false;
} }
}
 
}//-->
 </script>
 
 
在判断提交的信息格式正确后,就由一段ASP代码判断用户是否是已注册过的,核查用户名和E-MAIL地址是否已存在,将正确的信息写入后台数据库,并同时提示用户注册成功。其ASP代码如下:
 
<%
set rs=server.createobject('adodb.recordset')
sqltext='select * from RegUser where UserId='' & request.form('uid') & '''
rs.open sqltext,conn,1,1
if not rs.eof then
'查找数据库,检查用户名是否已经注册过
if rs.recordcount >= 1 then 
   if rs('userid')=request.form('uid') then
      Response.Redirect 'loginsb.asp?msg=此用户名已经注册过,请选用其他用户名!'
      response.end
      rs.close
   end if
end if
end if
set rs=server.createobject('adodb.recordset')
sqltext='select * from RegUser'
rs.open sqltext,conn,3,3
 
'添加一个用户到数据库
rs.addnew
rs('UserId')=request.form('uid')
rs('PassWD')=request.form('pwd')
rs('WtPass')=request.form('question')
rs('DaPass')=request.form('answer')
rs('Name')=request.form('Name')
rs('Sex')=request.form('Sex')
rs('Email')=request.form('Email')
rs('Phone')=request.form('usephone')
rs('Address')=request.form('haddr')
rs('Zip')=request.form('postcode')
rs.updates
%>
 
 
 
 
 
 
 
 
5.3.3  用户登陆
用户一旦成为本网站的会员后,即可在登陆页面中登陆,用户只要输入自己的用户名和密码即可实现登陆。这里有ASP函数对用户名和密码进行判断,以此来保证用户的合法性,ASP代码如下:
 
<%@ LANGUAGE='VBSCRIPT' %>
<!--#include file='conn.asp' -->
<%
Name = Request.form('uid')
Pwd  = Request.form('pwd')
set Rs = Server.CreateObject('ADODB.recordset')
sql='select * from RegUser where UserId=''&Name&''and PassWD=''&Pwd&'''
rs.open sql,conn,1,1
IF  rs.RecordCount >=1 then
 Session('LoginSuccess')=rs('UserId')
      response.redirect 'ment1.asp'
   else
      response.redirect 'loginsb.asp?msg=用户登录失败,请输入正确帐号和密码重新登录!'
   End if  
rs.close
conn.close
 %>
5.3.4  购物结算
 
下定单图5.7
 
 
 
5.8收货信息
 
 
 
5.9结算
 
 
5.10提交
 
 
 
 
 
参考文献
[1]徐建波主编.《Internet与Web设计教程》 .中国矿业大学出版社 .2001[1-3]
[2] 云舟工作室编著.精通ASP3.0网络编程.人民邮电出版社.2001[4-5]
[3] 曹建主编.Dreamweaver与ASP实战演练.电子工业出版社.2001[6-8]
[4] Time创作室编著.office2000系列丛书sql2000.人民邮电出版社.1999[18]
[5] 武晓军、陈海滨编著.Javascript/VBScript网页编程实例解析.清华大学出版社.2001[15-16]
[6] 虞益诚、孙莉编著sql2000 中国铁道出频社2004[18]
[7] 林金霖.ASP实务经典.中国铁道出版社.2000[18-19]
[8] 使用MD5加密数据库中的用户密码 .http://www.ccw.com.cn
[9]Jonadese《Dreamweaver MX ASP》  Mach, 2003[16-17]
[10]Jonathan Goodyear 《Debugging ASP.NET》 New Riders   May, 2002
 
 
  
 
 


免费论文检测 论文查重

本文原地址:http://www.taolw.com/a/asp/11770.html