asp毕业设计—— 基于asp+access的网上购物系统设计与实现(毕业论文+程序源码)——网上购物系统

基于asp+access的网上购物系统设计与实现(毕业论文+程序源码)

大家好,今天给大家介绍基于asp+access的网上购物系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。
需要下载开题报告PPT模板及论文答辩PPT模板等的小伙伴,可以进入我的博客主页查看左侧最下面栏目中的自助下载方法哦

文章目录:

1、项目简介

  1. 运用ASP技术和网络数据库原理,基于B/S模式我开发了一个网上购物系统。在我的系统中,顾客可以很方便的注册成为会员,对商品进行浏览检索,查看商品的详细资料,然后根据各人的喜好购买心仪的商品。系统会自动为顾客生成订单,按照顾客所填写的信息提交订单并发货。系统管理员则可以对现有的商品进行添加和编辑,审查已注册的用户并对提交的订单进行处理。

2、资源详情

项目难度:中等难度
适用场景:相关题目的毕业设计
配套论文字数:13362个字51页
包含内容:整套源码+完整毕业论文


3、关键词:

B/S模式;ASP;电子商务;网络数据库

4、毕设简介

提示:以下为毕业论文的简略介绍,项目源码及完整毕业论文下载地址见文末。

第一章.前 言
1.1问题的提出
对于基于Web平台的网上购物系统,存在着一个前台应用和后台管理的问题。而无论前台还是后台,都要对数据库进行调用和操作。因此如何创建网络数据库,以及客户端如何调用服务器端的数据库成为实现网上购物的一个关键性问题。

1.2问题的解决
在这里,我采用B/S模式来实现客户端对服务器端的调用,所谓B/S模式即浏览器/服务器模式,是一种从传统的二层C/S模式发展起来的新的网络结构模式。在B/S模式中,客户端运行浏览器软件。浏览器以超文本形式向Web服务器提出访问数据库的要求,Web服务器接受客户端请求后,将这个请求转化为SQL语法,并交给数据库服务器,数据库服务器得到请求后,验证其合法性,并进行数据处理,然后将处理后的结果返回给Web服务器,Web 服务器再一次将得到的所有结果进行转化,变成HTML文档形式,转发给客户端浏览器以友好的Web页面形式显示出来。

而对于网络数据库的创建,则是利用ASP技术来解决。ASP(Active Server Pages动态网页)是微软公司推出的一种用以取代CGI(Common Gateway Interface通用网关接口)的技术。目前,Internet上的许多基于Windows平台的Web站点已开始应用ASP来替换CGI。 简单地讲,ASP是一个位于服务器端的脚本运行环境,通过这种环境,用户可以创建和运行动态的交互式Web服务器应用程序,如交互式动态网页,包括使用HTML表单收集和处理信息,上传与下载等等。

在电子商务中,对用户而言,进行网上信息查询的目的是寻找自己需要的产品或服务,而对于商品或服务提供者来说,其目的则是向用户推销自己的产品或服务。因此,让用户通过浏览器查询服务器的后端数据库是许多Web服务提供者必需有的服务,ASP通过内置的ADODB组件来实现这一功能。可以使用ADO去编写紧凑简明的脚本以便连接到ODBC 兼容的数据库和 OLE DB 兼容的数据源。至于实现的细节,在后续部分的网络数据库章节中有详细介绍。

第二章.目前主流网站开发技术、工具的优缺点对比
准备知识――ASP技术
2.1 ASP的简介
ASP(Active server pages)是一种类似HTML(Hypertext Markup Language超文本标识语言)、Script与CGI(Common GAteway Interface 通用网关接口)的结合体,但是其运行效率却比CGI更高、程序编制也比HTML更方便且更有灵活性,程序安全及保密性也比Script好。

HTML(Hypertext Markup Language)是一种超文本标识语言,文件通过这种格式可以在互连网上载送浏览,用户只要使用网页浏览器工具就可以浏览这些文件,目前比较常用的工具包括Microsoft Internet Explorer,Netscape Communicator等,由于HTML文件都是由标签(tag)所组成,因此它比较适合制作静态网页,再者,由于先天上的限制HTML是无法直接存取数据库的,所以存取数据库的工作大多是依靠CGI来处理。ASP不但可以包含HTML标签,也可以直接存取数据库及使用无限扩充的ActiveX控件,因此在程序编制上要比HTML方便而且更富有灵活性。ASP以HTML为基础,主体还是HTML代码,只是在需要ASP动态产生的地方加入ASP代码。ASP的最终显示结果也是HTML代码,可准确控制ASP的输出结果。

Script(脚本)是由一组可以在WEB服务器或客户端浏览器运行的命令组合而成,目前在网页编制上比较流行的脚本语言包括 VBScript,JavaScript。这些脚本大都是在客户端运行,因此,客户端可以很清楚的取得脚本的内容。所以,就安全性而言,这些客户端的脚本语言的确有危险。ASP虽然具有脚本语言的方便性,但由于他是在WEB服务器端运行,运行后再将运行结果以HTML格式传送至客户端的浏览器。因此ASP与一般的脚本语言相比,要安全的多。

2.2 ASP的特点
ASP可以和HTML或其它脚本语言(VBScript,JavaScript)相互嵌套
ASP是一种在WEB服务器端运行的脚本语言,程序代码安全保密
ASP以对象为基础,因此可以使用ActiveX控件继续扩充其功能
ASP内置ADO组件,因此可以轻松的存取各种数据库
ASP可以将运行结果以HTML的格式传送至客户端浏览器,因而可以适用与各种浏览器

目前主要的网站开发技术有ASP、CGI、PHP、JSP等,其各自特点如下:
1.ASP技术具有以下特点:
a、使用VBScript、JavaScript等简单易懂的脚本程序,结合HTML代码,即可快速完成动态网页的开发。
b、无须编译,容易编写,可在服务器端直接执行。
c、使用普通的文本编辑器,如Windows的记事本,即可进行编辑设计。
d、与浏览器无关。用户端只要有HTML的浏览器,即可浏览ASP所设计的网页内容。ASP所使用的脚本程序,如VBScript或JavaScript均在Web服务器端执行,用户端的浏览器可以不具备运行这些脚本的能力。
e、ASP与任何ActiveX Script语言兼容。除了可使用VBScript或Jscript语言来设计外,还可通过Plug-in的方式,使用由第三方所提供的其他脚本程序,如REXX、Perl和Tcl等。脚本引擎是处理脚本程序的COM(Component Object Model)对象。
f、ASP源程序不会被传到客户的浏览器中,因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。
g、可使用服务器端的脚本来产生客户端的脚本。
h、ActiveX Server Components(ActiveX服务器组件)具有无限可扩充性。可以使用Visual Basic、Java和Visual C++等编程语言来编写所需的ActiveX Server Component。

2.CGI技术简介
CGI是Common Gateway Interface(通用网关接口)的缩写。其运行方式是,用户在浏览器端填好表单(Form)要求输入的数据,提交后,浏览器即向Web服务器提出HTTP请求。Web服务器端将执行表单设置的可执行的CGI应用程序,分析表单中输入的数据,并访问Web数据库,最后将结果以HTML的格式返回给浏览器。对于CGI来说,指令来自于浏览器,由CGI接口传送到服务器之后,再由服务器进行编译,然后启动服务器中相应的程序。CGI存在的明显不足是在相同的操作系统中,若Web服务器不同,那么CGI接口程序也会不同。如果改变Web服务器,原来的接口程序也就无法使用。

ASP程序也可以是CGI程序,或者说是CGI程序的改进版。它也是在服务器端执行的,但与CGI相比,它有以下两个优点:
a、CGI接口对象化:ASP提供了丰富的内置对象,让ASP程序简化CGI的相关处理工作。
b、能够使用ActiveX对象:除了ASP内置对象外,凡是Windows系统中的ActiveX对象都可以让ASP程序使用,使其成为ASP网页制作中的资源。这样也就使得ASP程序可以做的事情比传统的CGI程序要多出许多。

3、PHP简介
PHP也是一种在服务器端嵌入HTML的脚本程序。与ASP的格式有些相同,但PHP在UNIX系统环境下的超强弹性可能会吸引众多用户,这些弹性是UNIX环境下各种各样的工具,如:Perl、awk、grep和Sendmail等。

4、JSP简介
JSP是Java Server Pages的简称,是将纯JAVA代码嵌入HTML中实现动态功能的一种技术。在SUN公司正式发布JSP后,这种新的Web应用开发技术很快引起了人们的关注。JSP为创建高度动态的Web应用提供了一个独特的开发环境。事实证明,JSP必将成为ASP技术的有力竞争者。

JSP与ASP技术非常相似,两者都提供在HTML代码中混合某种脚本以及由语言引擎解释执行程序代码的能力。在ASP或JSP环境下,HTML代码主要负责描述处理逻辑。普通的HTML页面只依赖于Web服务器,而ASP和JSP页面需要附加的语言分析引擎和执行脚本。执行结果被重新嵌入到HTML代码中,然后一起发送给浏览器。ASP和JSP都是面向Web服务器的技术,客户端浏览器不需要任何附加的软件支持。

ASP的编程语言是VBScript之类的脚本程序,而JSP使用的是JAVA,这是两者之间最明显的区别,即两种语言引擎使用完全不同的方式处理页面中嵌入的脚本。在ASP下,VBScript代码被ASP引擎解释执行。而在JSP下,脚本被编译成Servlet并由JAVA虚拟机执行,这种编译操作仅在对JSP页面的第一次请求时发生。

2.3 ASP的工作原理
如果浏览器向IIS/PWS请求的是.HTM文件,那么IIS/PWS会直接把文件的内容传给浏览器.但如果浏览器向IIS/PWS请求的是.ASP文件,则IIS/PWS会首先解释文件.

IIS/PWS解释.ASP文件的过程中,遇到HTML标记或一般文字时会直接把读区的内容传给浏览器.但如果遇到<% %>的标记,则会把其中的内容视为程序,然后解释执行,但程序经过IIS/PWS解释执行后,其源程序代码不会传给浏览器,而只是把可显示的运行结果传给了浏览器

Active Server Page技术为应用开发商提供了基于脚本的直观、快速、高效的应用开发手段,极大地提高了开发的效果。ASP脚本是采用明文(plain text)方式来编写的。 ASP脚本是一系列按特定语法(目前支持vbscript和jscript两种脚本语言)编写的,与标准HTML页面混合在一起的脚本所构成的文本格式的文件。当客户端的最终用户用WEB浏览器通过INTERNET来访问基于ASP脚本的应用时,WEB浏览器将向WEB服务器发出HTTP请求。WEB服务器分析、判断出该请求是ASP脚本的应用后,自动通过ISAPI接口调用ASP脚本的解释运行引擎(ASP.DLL)。ASP.DLL将从文件系统或内部缓冲区获取指定的ASP脚本文件,接着就进行语法分析并解释执行。最终的处理结果将形成HTML格式的内容,通过WEB服务器"原路"返回给WEB浏览器,由WEB浏览器在客户端形成最终的结果呈现。这样就完成了一次完整的ASP脚本调用。若干个有机的ASP脚本调用就组成了一个完整的ASP脚本应用。虑到兼容性,易用性以及稳定性,最终我们选择了ASP技术完成网站开发,这一方面是由于ASP技术易学易用,容易上手;另一方面,ASP技术与微软操作系统的良好兼容性是其入选的重要决定因素,毕竟现在还是使用微软操作系统的服务器提供商较多,相关的资源也比较丰富。

开发平台则选用Microsoft Visual InterDev ,作为Microsoft Visual Studio成员,其良好的兼容性是其他开发平台无法比拟的;其良好的代码管理功能,容易上手的特点也是其入选的原因。

数据库平台则采用了Microsoft Access ,一方面是由于其是微软产品,兼容性方面不会出现问题;另一方面,其全中文界面,与Office家族成员“一脉相承”的操作方式,使其几乎不需学习即可轻松上手,丰富的在线帮助可以解决大部分的常见问题,数据库平台自然非它莫属。

第三章.系统概述
3.1系统设计思想
整个系统是以ASP技术来开发,数据库的创建使用Microsoft Access ,对数据库的查询和调用是通过ASP内置的ADODB组件来实现的。

3.1.1访问方式的选择
由于选择了Access作为数据库平台,为了保证运行速度和稳定性,选择ADO作为数据库访问方式,ActiveX Data Object(ADO)是当今流行的Web数据库应用的最佳选择之一。ADO是Microsoft提供的一种功能强大的数据库访问编程模式,容易使用且可以轻松的集成到Web页中。我们可以使用ADO编写紧凑简明的脚本,轻松地连接到ODBC兼容的数据库。

使用ADO技术,可以与ASP紧密结合起来,建立提供数据信息的网页内容,只需在网页页面中执行SQL指令,让用户在浏览器界面中输入、更新和删除Web服务器上的数据。当用户在浏览器上填好表单所要求输入的资料并提交后,经过Internet传送HTTP请求到Web服务器,该请求在Web服务器执行一个表单所指定的ASP程序。在ASP文档中,ADO通过ODBC驱动程序连接到支持ODBC的数据库上,发送ASP文档所指定的SQL指令到数据源,最后将执行的结果以HTML的格式传送到用户的浏览器上。

ADO技术具有以下特点:
1.将原本复杂的数据库程序开发变成轻松容易的工作,除了具有传统数据库开发环境的优点外,还增加了对数据库修改和维护的功能。
2.几乎兼容所有的数据库系统(如Microsoft Access、FoxPro、SQL Server及Oracle等),ADO为他们提供相同的处理界面供程序设计人员使用。
3.能跨越多种不同的程序语言开发环境,如Visual Basic/C++,Java语言,甚至Script环境下的Java/VBScript等。虽然开发的语言环境不同,但ADO提供了类似的设计方式,方便了用户的使用。
4.可以在支持COM(Component Object Model,组件对象模型)和OLE(对象链接和嵌入)的服务器端操作系统,包括Microsoft Windows 98/NT/2000等操作系统上都可以开发出Web数据库系统。
5.为了让ADO对象能够存取数据库中的数据,必须将数据库的驱动程序(ODBC驱动程序与OLE DB驱动程序)事先安装上。

使用ADO开发数据库应用程序有以下优点与特色:
1.支持C/S结构与Web系统集成的开发设计。
2.内部有多个互相独立的对象模型,便于进行开发和设计。
3.支持分批修改数据库内容。
4.支持多种不同的数据控制形式。
5.具有先进的数据库高速缓存管理功能。
6.允许在程序中使用多个Recordset对象进行多个分批区块数据传递。

实际应用中采取了在脚本文件中直接创建数据源的方式,这样不需进行任何其他的设置,程序会在需要时自动创建所需数据源,示例代码如下:
'连接数据库

DbPath = SERVER.MapPath("mdb/db.mdb")
Set conn = Server.CreateObject("ADODB.Connection")
conn.open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DbPath
Head="网上商城"
'创建一个RecordSet对象rs
set rs=server.createobject("adodb.recordset")
sqltext="select top 10 * from cpb order by regtime desc"
rs.open sqltext,conn,1,1'用open方法访问数据库

完成对数据库的操作后,可以使用 set <ADO对象名称>=nothing释放其占用的资源。

为了便于编程,前台的操作页面和后台的数据库管理页面的设计我是分别进行的。在整个程序编写完之后,在将后台的数据库管理页面通过管理员在前台的登录来调用,这样就把前台和后台有机的连接起来,使操作更加方便。当用户以会员身份登录调用执行的是前台的操作页面,而当以管理员身份登录时,则进入后台管理页面来对数据库进行操作。而对于前台购物操作中的核心部分——购物篮的实现,这将在后面的功能模块设计章节中做详细阐述。

3.2系统总体结构图
在这里插入图片描述

由图可以看出,系统是基于B/S模式开发的。

3.3系统功能模块图

在这里插入图片描述

第四章.系统网络数据库的建立
4.1系统数据源的设置
使用ADO去编写紧凑简明的脚本以便连接到ODBC 兼容的数据库和 OLE DB 兼容的数据源。具体的操作步骤可以归纳为以下几步:

① 创建数据库源名(DSN)
ADODB通过ODBC工作,因此要在ODBC中设置DSN(数据源名)。打开Windows的"控制面板",双击"ODBC"的图标,然后选择"文件 DSN “的属性页,单击<添加>,选择数据库驱动程序,然后单击"下一步”,按照屏幕的指示键入数据源文件的名称,然后单击“下一步",再单击"完成"创建数据源。

②创建数据库链接
链接用以保持一些关于正在访问的数据的动态信息,以及链接者信息。利用ADODB的成员函数Open和先前设定的DSN与数据库连接,其语法如下:
SetConnect=Server.CreateObject(“ADODB.Connection”)//创建了链接对象Connect。 Connect.Open(“DSN=dsnname;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) 这条语句执行后,对象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
完整的程序片段:

SetConnect=Server.CreateObject("ADODB.Connection")//产生组件实例
Connect.Open("DSN=dsnname;UID=userID;PWD=password")//连接数据库
SQL=select*fromtablename SetRS=Connect.Execute(SQL)//执行查询      
DoWhile Not RS.EOF//显示结果    
<=RS(fieldname)> <%Rs.MoveNext Loop %> 

上述是用ASP访问数据库的全过程,由于应用面向对象思想,所有操作都比较简单,用户需要注意的仅是对数据结构的了解、当前所操作的对象及对象的属性等等,只要对这些有了清晰的认识,再加上ASP强大功能,在网络上使用数据库,实现用户与页面间交换信息,就再也不是什么难事了。

4.2表、关系模型和数据库的概述
省略

4.3范式与建表的规范化
省略

4.4系统数据库的详细建立
建立数据库表(#cnhww.mdb)

4.4.1用户信息数据表(Wq_action)
在这里插入图片描述

4.4.2管理员信息表(Wq_admin)
在这里插入图片描述

4.4.3商品大类表(Wq_pingpai)
在这里插入图片描述

4.4.4商品小类表(Wq_books)

在这里插入图片描述

4.4.5商品表(Wq_sort)

在这里插入图片描述

4.4.6购物篮表(Wq_sort2)
在这里插入图片描述

4.4.7订单表(Wq_city)

在这里插入图片描述

说明:所建立的数据库文件(#cnhww.mdb)保存在文件夹cnhww.mdb下,为防止别人随意篡改数据库,我将其后缀名改为.asp来调用。

第五章.系统功能模块设计
5.1客户端
系统主界面:
在这里插入图片描述

其程序代码:

<HTML>
<title>管理首页面</title>
<link rel="stylesheet" href="Style.css" type="text/css">
<BODY>
 <table border="0" cellspacing="1" width="100%" align=center>
    <tr>
      <td width="100%"><table cellpadding="3" cellspacing="1" border="0" width="100%" class="tableBorder" align=center>
      <tr> 
          <th class="tableHeaderText" colspan=2 height=25>购物系统</th>
        </tr> 
		<tr> 
        <td class="forumRowHighlight" height=23>使用设置</td>
          <td class="forumRow" style="LINE-HEIGHT: 150%"> 第一次使用本系统,请点击左边管理导航菜单中的“<font color=Red>常规设置</font>”对你的网站信息和一些网站配置参数进行配置。 
          </td>
      </tr>
        <tr>
          <td width="60" class="forumRowHighlight" height=23>站  长</td>
          <td class="forumRow" style="LINE-HEIGHT: 150%"> 拥有所有权限。第一次使用时请<font color=Red>修改密码</font>后重新登陆。<font color="#666666">请到“用户管理”-“系统用户管理”设置系统用户!</font></td>
      </tr>
      <tr> 
          <td class="forumRowHighlight" height=23>管 理 员</td>
          <td class="forumRow" style="LINE-HEIGHT: 150%"> 需要站长给予权限。<font color="#666666">其权限为:除网站基本信息外的所有管理。</font></td>
      </tr>
	  <tr> 
          <td class="forumRowHighlight" height=23>业 务 员</td>
          <td class="forumRow" style="LINE-HEIGHT: 150%"> 需要站长给予权限。<font color="#666666">其权限为:商品、奖品、评论、订单、客户管理。</font></td>
      </tr>
      <tr> 
      <tr> 
          <td class="forumRowHighlight" height=23>会  员</td>
          <td class="forumRow" style="LINE-HEIGHT: 150%"> 1、会员(客户)分为普通会员、VIP会员。<br>
             2、两者都没有管理权限,只可以购买站内商品。 </td>
      </tr>
    </table>
</td>
    </tr>
</table><BR>
    <table cellpadding="3" cellspacing="1" border="0" width="100%" class="tableBorder" align=center>
      <tr> 
        
    <th class="tableHeaderText" colspan=2 height=25>版本信息</th>
      
      <tr> 
        <td width="60" class="forumRowHighlight" height=23>目前版本</td>
        
    <td class="forumRow" style="LINE-HEIGHT: 150%"> 购物系统</td>
      </tr>
      <tr> 
        <td class="forumRowHighlight" height=23>版权声明</td>
        
    <td class="forumRow" style="LINE-HEIGHT: 150%"> </td>
	  </tr>
    </table>
<BR>
    <table cellpadding="3" cellspacing="1" border="0" width="100%" class="tableBorder" align=center>
      <tr> 
        
    <th class="tableHeaderText" colspan=2 height=25>开发信息</th>
      
      <tr> 
        <td width="60" class="forumRowHighlight" height=23>程序制作</td>
        
    <td class="forumRow"> 123456</td>
      </tr>
      <tr> 
        <td class="forumRowHighlight" height=23>联系方式</td>
        
    <td class="forumRow"> QQ:123456 E-Mail:XXXXr@XXXX.com </td>
      </tr>
      <tr> 
        
    <td class="forumRowHighlight" height=23>个人主页</td>
    	
    <td class="forumRow">  <a href="http://www.cnhww.com" target=_blank>www.XXXXX.com 
      </a><a href="http://www.cnhww.com" target=_blank></a></td>
      </tr>
    </table>
</BODY>
</HTML>

5.1购物界面如下图所示:

在这里插入图片描述

5.1.2会员注册
会员注册页面:
在这里插入图片描述

在会员注册中,首先是检查该顾客所申请的用户名是否以被人申请了,若已被人申请了该用户名,则系统将提示给用户“该用户名已存在”的信息。其方法还是使用对数据库的操作:

set rs=server.createobject("adodb.recordset")
sqltext="select * from Wq_action where UserId='" & request.form("uid") & "'"
rs.open sqltext,conn,1,1

'查找数据库,检查用户名是否已经注册过
if rs.recordcount >= 1 then 
   if rs("userid")=request.form("uid") then
      Response.Redirect "messagebox.asp?msg=此用户名已经注册过,请选用其他用户名!"
      response.end
      rs.close
   end if
end if

之后进入用户详细资料登记的页面(Reg_User_OK.asp):

在这里插入图片描述

另外还将调用页面Reg_User_2.asp,它将使用大量的Javascript的语言开发的程序,用来检查用户填入字符的正确性。其主要的程序看后面源程序代码,详细的介绍各程序单元所完成的功能和作用。

在用户登记个人的详细资料时,仍然使用ASP中的Recordset的对象,对数据库进行添加的操作,其方法如下:

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.update
%>
<%
set rs_detail=server.createobject("adodb.recordset")
sqltext2="select * from Wq_action where UserId='" & request.form("uid") & "'"
rs_detail.open sqltext2,conn,1,1

申请成功后进入提示界面,告诉用户已经申请成功。

5.1.3商品查询
在这里插入图片描述

首先在主页面default.asp中实现以商品大类方式的查询:

While Not rs_wq_pingpai.EOF
	set rs_wq_books=server.createobject("adodb.recordset")
	sqltext3="select * from Wq_books where Wq_pingpai_Name='" & rs_wq_pingpai("Wq_pingpai_Name") & "'"
	rs_wq_books.open sqltext3,conn,1,1

如果在文本输入框中输入了商品名称,则调用执行Wq_sortSearch.asp:
Wq_sortWq_books=request("Wq_sortWq_books")
set rs=server.createobject("adodb.recordset")
sqltext="select * from Wq_sort" 
if request("Wq_sort_Name")<>"" then
  sqltext=sqltext &" where  Wq_sort_Name like '%"& request("Wq_sort_Name") &"%' "
    else
       sqltext=sqltext &" where Wq_sort_Name like '%"& "" &"%' "
    end if
    if request("Wq_sort_Class")<>"" then
       sqltext=sqltext &" and Wq_pingpai like '%"& request("Wq_sort_Class") &"%' "
    end if
rs.open sqltext,conn,1,1

5.1.4新闻中心
在这里插入图片描述

5.2后台管理端
在这里插入图片描述

<html>
<head>
<title><%=webname%>--用户登录</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="inc/css.css" rel="stylesheet" type="text/css">
</head>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<!--#include file="webtop.asp"-->
<%if request.cookies("cnhww")("username")<>"" then%>
<table width="770" border="1" align="center" cellpadding="0" cellspacing="0" bordercolor="#EDECEC">
  <tr> 
    <td bordercolor="#FFFFFF" bgcolor="#FFFFFF"> 
	<table border="0" align="center" cellpadding="0" cellspacing="0" width="480">
        <tr> 
          <td height="150" align="center">欢迎<font color="red"> <%=Request.Cookies("cnhww")("username")%> </font>登陆,请选择相关服务!</td>
        </tr>
      </table>
	  <%else%>
      <table width="480" height="150" border="0" align="center" cellpadding="0" cellspacing="0">
        <tr> 
          <td> <br><br><br>
            <div align="center"><font color="#FF0000"><b><font color="#999999" size="5">用户登录</font></b></font> 
              <br><br><br><br>
              <table border="0" cellspacing="0" cellpadding="1" align="center" width="489">
                <tr> 
                  <td> 
                    <table width="100%" border="0" cellspacing="0" cellpadding="0">
                      <tr> 
                        <td rowspan="2"> 
                          <table width="100%" border="0" cellspacing="0" cellpadding="0" class="12v">
                            <tr> 
                              <td class="12v" > 
                                <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" id="AutoNumber3" height="0" width="100%">
                                  <tr> 
                                    <td> 
                                      <table width="100%" border="0" align="center" cellpadding="1" cellspacing="1">
                                        <form name="feedbackinfo" method="post" action="checklogin.asp">
                                          <tr> 
                                            <td style="padding-left:10px" width="45%" align="right">用户名:</td>
                                            <td height="22" style="padding-left:10px" width="55%"> 
                                              <input name="username" type="text" id="username" size="12" style="BORDER-RIGHT: #ffffff 0px groove; BORDER-TOP: #ffffff 0px groove; BORDER-LEFT: #ffffff 0px groove; COLOR: #333333; BORDER-BOTTOM: #3333331px groove; HEIGHT: 18px; BACKGROUND-COLOR: #ffffff";>
                                            </td>
                                          </tr>
                                          <tr> 
                                            <td style="padding-left:10px" width="45%" align="right">密 码:</td>
                                            <td height="22" style="padding-left:10px" width="55%"> 
                                              <input name="userpassword" type="password" id="userpassword" size="12" style="BORDER-RIGHT: #ffffff 0px groove; BORDER-TOP: #ffffff 0px groove; BORDER-LEFT: #ffffff 0px groove; COLOR: #333333; BORDER-BOTTOM: #3333331px groove; HEIGHT: 18px; BACKGROUND-COLOR: #ffffff";>
                                              <input type="hidden" name="linkaddress" value="<%=request.servervariables("http_referer")%>">
                                            </td>
                                          </tr>
                                          <tr align="center"> 
                                            <td height="47" colspan="2" style="padding-left:10px"> <br><br>
                                              <input name="imageField" type="image" src="images/login_bt_login.gif" width="47" height="36" border="0" onFocus="this.blur()">
                                              <a href="reg.asp"><img src="images/login_bt_zc.gif" width="47" height="36" border="0"></a> 
                                              <a href="javascript:;" onClick="javascript:window.open('getpwd.asp','','width=350,height=200');"><img src="images/login_bt_wm.gif" width="47" height="40" border="0"></a> 
                                            </td>
                                          </tr>
                                        </form>
                                      </table>
                                    </td>
                                  </tr>
                                </table>
                              </td>
                            </tr>
                          </table>
                        </td>
                      </tr>
                    </table>
                  </td>
                </tr>
              </table>
              <br>
            </div>
          </td>
        </tr>
      </table>
      <%end if%>
    </td>
  </tr>
</table>
<!--#include file="webfoot.asp"-->
</body>
</html>
<SCRIPT LANGUAGE="JavaScript">
<!--
function checkspace(checkstr) {
  var str = '';
  for(i = 0; i < checkstr.length; i++) {
    str = str + ' ';
  }
  return (str == checkstr);
}

function checkfeedback()
{
   if(checkspace(document.feedbackinfo.username.value)) {
	document.feedbackinfo.username.focus();
    alert("请填写用户名!");
	return false;
  }
   if(checkspace(document.feedbackinfo.userpassword.value)) {
	document.feedbackinfo.userpassword.focus();
    alert("请填写密码!");
	return false;
  }
}
//-->
</script>

5.2.1最新商品
在这里插入图片描述

商品审查包括对商品的编辑和对商品的删除操作。
(1)商品编辑:
编辑操作是调用Wq_sort_Modify.asp页面对商品信息进行编辑修改,然后调用Wq_sort_Modify_Ok.asp页面将修改后的信息添加到商品表(Wq_sort)中。

set rs=server.createobject("adodb.recordset")
sqltext="select * from Wq_sort where Wq_sort_no=" & request.form("wq_sort_no")
rs.open sqltext,conn,3,3

'更新商品到数据库
rs("Wq_books")=request.form("wq_books_name")
rs("Wq_pingpai")=request.form("wq_pingpai_name")
rs("Wq_sort_name")=request.form("p_name")
rs("Wq_sort_intro")=request.form("p_intro")
rs("Wq_sort_show")=request.form("p_show")
rs("P_newprice")=request.form("newprice")
rs("P_oldprice")=request.form("oldprice")
rs("P_pic")=request.form("p_pic")
rs("P_full_pic")=request.form("p_full_pic")
rs.update
rs.close
conn.close
response.redirect "wq_sort_check.asp"

(2)商品删除:
调用页面Del_Wq_sort.asp来实现:

<%
   dim SQL, Rs, contentID,CurrentPage
   CurrentPage = request("Page")
   contentID=request("ID")

   set rs=server.createobject("adodb.recordset")
   sqltext="delete from Wq_sort where Wq_sort_No="& contentID
   rs.open sqltext,conn,3,3
   set rs=nothing
   response.redirect "wq_sort_check.asp?page="&CurrentPage
%>

5.2.3售后服务
售后服务的页面:

在这里插入图片描述

订单审查实现了两个功能:处理订单和删除订单。
(1) 处理订单:

set rs=server.createobject("adodb.recordset")
sqltext="select Flag from Wq_city where Form_Id=" & request("Form_Id")
rs.open sqltext,conn,1,1
if rs("Flag")="已经发货" then
	rs.close
	Response.Redirect "ordermessagebox.asp?msg=此订货单您已经做过了发货处理!"
Else
	set rs=server.createobject("adodb.recordset")
	sqltext="update Wq_city set Flag='"&djfc&"' where Form_Id=" & request("Form_Id")
	rs.open sqltext,conn,3,3
    response.redirect "ordermessagebox.asp?msg=订货单处理处理完毕,请按客户详细地址发货!"
end if

(2) 删除订单:
在这里,我使用了一个java脚本,定义了删除函数:

<script language="javascript">
    function confirmdel(id,page){
       if (confirm("真的要删除这个订单?")) 
       window.location.href="del_wq_city.asp?id="+id+"&page="+page
     }  
</script>

通过它来调用删除页面(Del_Wq_city.asp):

<%
   dim SQL, Rs, contentID,CurrentPage
   CurrentPage = request("Page")
   contentID=request("ID")

   set rs=server.createobject("adodb.recordset")
   sqltext="delete from Wq_city where Form_Id="& contentID
   rs.open sqltext,conn,3,3
   set rs=nothing
   
   set rs=server.createobject("adodb.recordset")
   sqltext="delete from Wq_sort2 where Form_Id="& contentID
   rs.open sqltext,conn,3,3
   set rs=nothing

   response.redirect "wq_city_check.asp?page="&CurrentPage
%>

5.2.4支持付款
支持付款的页面:
在这里插入图片描述

支持付款实现了两个功能:在线支持和会员帐号转帐的删除。

结束语
在历时将近三个月的时间里,我的毕业设计是从学习新的知识(ASP语言和HTML语言),到建立网上购物系统的网站。我遇到了若干的问题和解决了不少的问题,现在还有未知安全性和可靠性的未能发现和解决。。

从建立自己的虚拟服务器,到网站服务。使我对电子商务认识的无到有,有了具体详细的认识。在我们所建立的网上购物系统只是一个网上的购物的基本原理,里面要涉及到的方方面面的问题我们未曾遇到或现有的条件限制而未能实现。电子商务并不是我们想象的写程序那么简单,它包括了编写程序、数据库设计、网页制作、图象处理、版面设计、数据采集、文本编辑、服务器管理等等,要搞好一个好的,完善的网站需要一个详细的、合理的、可行性的规划设计。

在用ASP开发的时候,在程序的调试上出现了很大的问题,要使用浏览器来浏览才能找出错误所在,这一定程度上延长了开发周期。在开始的时候往往要为了找一个小错误花上大半天的时间。经过多写程序,现在一定程度上已经能快效的找出错误,并熟练的操作数据库语言。

致谢
省略

参考文献:
[1] 薛华成主编,《管理信息系统》,北京:清华大学出版社,2001,P16
[2] 甘早斌主编,《电子商务概论》,武汉:华中科技大学出版社,2003,P78
[3] 汪洋 等著,《网站设计全程教程》, 重庆:科学出版社,2002,P37–39
[4] 张登辉,刘益红著 ,《ASP 编程基础及应用》,北京:机械工业出版社出版 ,2004,P24
[5] Weissinger,A ,ASP IN A NUTSHELL,Second Edition ,O’Reilly,2001,P229–234
[6] Analyzing Application Service Providers,Pearson Education,2001,P113–116
[7] 求是科技编著,《ASP电子政务应用系统开发实例导航》,北京:人民邮电出版社,2004,P47
[8] (美)Dave Mercer,ASP3.0:A Beginner’s Guide,McGraw-Hill,2001,P85–87
[9] 李劲著,《精通ASP数据库程序设计》,重庆:科学出版社,2003,P334–335
[10] 史济民著,《Access应用系统开发教程》,北京:清华大学出版,2002,P46
[11] 贾岚著,《中文Access数据库应用教程——数据库开发师》,北京:希望出版社,2002,P92
[12] 新概念电脑图书编委会,《数据库处理 Access 2002(提高版)含光盘》,北京:电子工业出版社,2001,P78
[13] 宣小平 等著,《ASP数据库系统开发实例导航》,北京:人民邮电出版社,2003,P256
[14] (美)Helen Feddema,Microsoft Access Version 2002 Inside Out ,Microsoft Press,2002,P46
[15] ONLINE PRESS公司 ,Quick Course in Microsoft Access 2000,Microsoft Press 1999,P58
[16] 魏茂林主编,《Windows 2000 Server 应用基础》,北京:电子工业出版社,2003,P207-208
[17] 汪晓平 钟军著,《ASP网络开发技术(第二版)》,北京:人民邮电出版社,2004,P27
[18] 刘禾 蔡锋著,《精通ASP架站技巧 (含盘)》,北京:中国青年出版社出版, 2003,P101
[19] 于鹏著,《HTML/CSS教程》,北京:电子工业出版社,2003
[20] http://www.6to23.com/s11/
[21] (美)Christoph Wille Christian Koller,Teach Yourself Active Server Pages in 24 HourS,Sams/Macmillan/Pearson ,2000,P438
[22] 丁贵广著,《ASP编程基础与实例》,北京:机械工业出版社,2003 ,P263–271
[23] Greg Buczek,Instant ASP Component ,McGraw-Hill Inc.,2001,P87
[24] 刘中宏 蔡锋 ,《精通VBScript(含盘)》,北京:清华大学出版社,2002 ,P61–62
[25] 汪晓平 钟军著,《ASP网络开发技术(第二版)》,北京:清华大学出版社,2003,P304–305
[26] 李劲著,《精通ASP数据库程序设计》,重庆:科学出版社,2001,P117
[27] Richard Anderson Chris Blexrud ,Professional Active Server Pages 3.0 ,Wrox Press,2000,P119–122
[28] Scott Mitchell,Designing Active Server Pages,O’Reilly,2001,P426–431
[29] Alex Homer,Alex Homer’s Professional ASP3.0 Web Techniques,Wrox Press ,2000,P251–257
[30] 石志国 王志良 薛为民著,《ASP精解案例教程》,北京:清华大学出版社,2004,P147


5、资源下载

本项目源码及完整论文如下,有需要的朋友可以点击进行下载。如果链接失效可点击下方卡片扫码自助下载。

序号毕业设计全套资源(点击下载)
本项目源码基于asp+access的网上购物系统设计与实现(源码+文档)_asp_BS架构_网上购物系统.zip
  • 4
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

毕业设计方案专家

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值