毕业设计(论文)基于ASP的WEB数据库开发.doc
-
资源ID:2389659
资源大小:970.50KB
全文页数:23页
- 资源格式: DOC
下载积分:8金币
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
毕业设计(论文)基于ASP的WEB数据库开发.doc
基于ASP的WEB数据库开发目录第一部分 关于ASP1.1 ASP简介1.2 运行ASP的需求1.3 Web服务器工作原理1.3.1 安装和管理Web服务器1.3.2 测试Web服务器1.3.3 脚本语言工作原理第二部分 ASP和数据存储访问2.1 数据库2.2 通用数据访问2.2.1 什么是ODBC2.2.2 什么是OLE-DB2.2.3 什么是ADO2.3 ASP与数据库的连接2.3.1 一种简单的建立数据连接的方法DSN第三部分 一个应用电子商务网站的实现3.1 应用系统介绍3.2 建立数据库3.2.1 数据模型3.2.2 连接到此数据库3.3 编写应用系统程序 3.3.1主页3.3.2 用户注册和登陆3.3.3 显示商品供用户浏览、选购3.3.4 搜索功能3.3.5 购物车的实现3.3.6 用户查询定单3.3.7 改进设想 附录A:参考文献中文摘要基于ASP的WEB数据库开发,将WEB技术与数据库技术相结合,开发动态WEB数据库应用,已成为当今的热门技术。本文通过一个电子商务网站陶陶网上书店的实现,提供一个用ASP实现WEB数据库的解决方案,给出其方法和过程。通过探讨目前流行的ASP数据库访问技术,及数据库系统结构,建立WEB数据库,制作动态网页,编制脚本语言,访问数据,实现数据查询。关键词:ASP,WEB服务器,VBScript,Access ,ODBC,对象,数据库ABSTRACTAccording to the ASP the WEB database development, have become technique of WEB and the database techniques combine together, the development dynamic state WEB database application, nowadays popular technique.This text passes an electronic commerce website- the taotao on-line bookstore, provide a solution that carries out the database of WEB with the ASP, give its method and processes.Pass the study popular ASP database currently interview technique, and the database system structure, build up the database of WEB, create the dynamic state web page, draw up the script language, the interview data, carry out the data search.Key Word: ASP,Server of WEB,VBScript,Access ,ODBC,Object,Database基于ASP的WEB数据库开发第一部分 关于ASP1.1 ASP简介Active Server Page(ASP)是创建动态网页的一个很好的工具。它起一种编程语言的作用,可利用它编写动态产生网页的HTML程序代码。因此,只要用户浏览我们的Web站点并请求一个ASP页,则由一个特殊的软件(Web服务器)处理相应的ASP代码。这种处理生成HTML,然后将它传递到浏览器并在用户屏幕上建立页面。ASP的能力表现在两个方面:首先,只在用户希望看到网页时,才建立HTML;其次它不关心使用的是什么Web浏览器。ASP的程序代码简单、通用,文件名由.asp结尾,ASP文件通常由四部分构成: 1) 标准的HTML标记:所有的HTML标记均可使用。2) ASP语法命令:位于<%. %> 标签内的ASP代码。3) 服务器端的include语句:可用#include语句调入其它ASP代码,增强了编程的灵活性。4) 脚本语言:ASP自带JavaScript和VBScript两种脚本语言,增加了ASP的编程功能,用户也可安装其它脚本语言,如Perl等.1.2 运行ASP的需求 为了编写页面,需要一个文本编辑器或其它的Web开发工具。在此记事本是一个很不错的工具。 为了发布页面,需要一个支持ASP的Web服务器。在此我们使用作为Windows 2000操作系统的一个组成部分安装的Internet Information Serber5.0即IIS5.0。 为查看和测试页面,需要一个Web浏览器。如前所述,ASP是在Web服务器上运行而不是在浏览器上运行的,这意味着任何浏览器都能满足要求。1.3 Web服务器工作原理Web服务器是一个运行在计算机上的软件,一经用户请求便向用户发送网页,并提供存储和组织某个Web站点的页面的场所。它遵从客户机服务器模式进行工作。Web服务器接收到从浏览器传送到来的HTTP请求,它检查自己的存储器并寻找相应的页面,将页面的HTML打包(用TCP)再用HTTP并通过网络传送回去。如果找不到被请求页面,则发送请求错误的信息回去。1.3.1安装和管理Web服务器在Windows 2000中进入控制面版并打开添加/删除程序图标,选择添加/删除Windows组件选择IIS前的复选框并用安装盘进行安装。IIS将其大部分成分安装在硬盘的winntsystem32inetsry目录下。且inetsry目录也是此时创建的,此目录将包含存放我们建立的网页文件的子目录。用MMC管理IIS。从开始菜单中选择运行,在对话框中输入MMC按确定按扭。在MMC中打开iis.msc文件,即可在此窗口内执行所有Web管理任务。1.3.2 测试Web服务器一旦IIS安装完毕Web服务在每次启动机器时都会自动启动。为了测试Web服务器,将启动一个浏览器并查看一些已经存放在Web服务器上的网页,可以通过在浏览器的地址框中输入URL,例如:http:/my_server_name/localstart.asp其中将my_server_name替换为你自己的服务器名。 在这里涉及到表示自己服务器名称的问题。缺省时,IIS将用计算机名作为服务器名。可从机器的网络设置中找到这个名称。如果Web服务器和浏览器使用同一台机器,可试一试http/127.0.0.1/.1.3.3 脚本语言工作原理目前流行的两种脚本语言VBScript和javaScript。每个脚本都必须在请求时进行解释,为此,每种脚本语言都有一个脚本解释程序脚本引擎。IIS5.0带有VBScript和javaScript两者的脚本引擎。由Web服务器解释的脚本称为服务器端脚本,由浏览器解释的脚本交客户端脚本。ASP是服务器端脚本,Web服务器通过%. % 标签识别ASP代码,并用相应的脚本引擎进行解释。而客户端脚本用<SCRIPT>和</ SCRIPT>标记识别。这里强调一个重要的差别:即,Web页文件的后缀选择.htm和.asp是不同的,关系到代码如何执行。第二部分 ASP和数据存储访问2.1 数据库 数据库在表和记录中存储信息。数据库标准化了信息存储的方法,并且通过键来区分不同的记录。键是唯一的标识符。2.2 通用数据访问 2.2.1 什么是ODBC ODBC(开放式数据库连接),是访问数据的一个标准,它提供一个透明的接口,程序员可以通过这个接口访问许多种数据库且操纵数据,而不用管数据存储在什么地方或使用哪种数据库进行存储。这使得程序员可以将精力放在应用的功能上,而无须过多地关注基本数据,甚至如何访问。如图2-1所示 :应用ODBCAccessSOL Server Oracle 图2-1 ODBC访问机制 2.2.2 什么是OLE-DB除了所有的数据库外,还有大量存储在其他格式中的数据。这些数据或许是包含公司财政的电子表格,或许是包含上个月访问客户报告的文本文件,或许是电子邮件系统以及相随的邮件信息都是数据。但ODBC不能有助于这种类型的数据访问。所以需要一种既能访问数据库也能访问其他格式数据的方法OLE-DB。 OLE-DB的概念类似ODBC,但它实际上可访问范围更广泛的数据存储,且支持通过ODBC的数据库连接。 利用数据提供者/数据使用者的机制,经过许多中间层在数据存储和ASP页之间传送数据。OLE-DB数据提供者是一个如象C+或Java这样的语言编写的程序,它使用OLE-DB对象提供通讯及传输数据所需的指令。数据使用者将ASP,更具体的说是ASP页中将要操纵在页面上显示的数据的ADO。2.2.3 什么是ADO ActiveX Data Objects(ADO)是一个允许页访问OLE-DB的接口。因此,当使用ASP访问某个数据存储时,实际上是使用ASP访问ADO,接着访问OLE-DB,再接着从数据存储中得到信息。ADO是一组对象,它允许程序员用Visual Basic以及脚本语言编写数据访问逻辑。ADO不是ASP的一部分,它更通用,在用其他语言编写其他的数据独立的应用程序时,也可用ADO。 以上探讨了几种数据库通用访问的方法,下面我们将用这些技术或方法进行与数据库的连接。2.3 ASP与数据库的连接 ADO有5个主要的对象:l Connection程序和数据存储之间的连接l Command允许运行相对于数据存储的命令l Recordset包含从数据存储的特定操作中返回的所有数据l Record允许处理半结构存储中存储的数据l Stream允许处理Web资源中的数据,如HTML建立网页与数据存储之间的连接类似于使用电话呼叫另一个地方,而ADO的Connection对象就相当于一部电话机,可同时用多个此对象呼叫多个服务,即每个Connection对象可连接不同的数据存储。需要向Connection对象提供连接信息,如数据存储类型,位置,数据存储的部分等等。在创建一个连接时,有三种方式可提供这些信息:l 连接串l 数据连接文件l 数据源名2.3.1 一种简单的建立数据连接的方法DSN数据源名(Data Source Name,DSN)是不用直接输入而建立连接串的方法。它的优点是使用简单。因为它使用ODBC驱动程序,不支持OLE-DB,从而失去其提供者的许多优点被认为是过时的建立数据连接的方法,但它的简单仍使应用较广泛。定义数据源:在WEB服务器上打开“控制面板”,选中“ODBC”,在“系统DSN”下选“添加”,选定你希望的数据库种类、名称、位置等。本文定义“Access”,数据源为“taotao”,数据库名称为“Taotao”,脚本语言采用VBscript。然后可在ASP代码中使用该标识符访问DSN:objConn.Open “DSN= taotao”第三部分 一个应用电子商务网站的实现3.1 应用系统介绍Internet能取代传统的原材料商店,起供应商或起位于买主和卖主之间的零售商作用。人们能够电子化地销售产品,所付出的销售成本很少。如果将整个系统放在Internet上,则向上和向下的信息传达都可以利用单一的介质Web浏览器来完成。销售只是一种拍卖,因为许多潜在的购买者全都处于平等的状态,可对同一物品出价。这对所以购买者是很公平的,而且可以更好的进行交易。 在实际的实现过程中,我们的重点就由前期设计阶段的功能和内容设计过渡到如何使用各种技术实现我们设计好的功能上来了。也就是使用ASP技术构建网站,实现各种功能,当然其中会频繁的涉及到Access数据库的访问。在编码和调试中要使用到Windows 2000的IIS。系统功能有:l 显示商品;以供用户浏览、选购。l 实现商品的搜索功能;其中涉及到表单的提交,然后访问数据库,显示符合条件的商品。l 新用户注册的功能;其中涉及到表单的提交,然后判别输入的数据的合法性,并将有效的新用户信息写入数据库。l 实现购物车的功能。l 用户购买完商品后查询订单的状态。图3-1 陶陶网的购物流程让我们接着看看在本应用中起重要作用的ASP页。每个页面都实现某项功能,包含完成某项工作的代码。见下表:用户登陆后看到的第一个页面,它欢迎注册用户访问此站点,给出一个简单的选项菜单,用户可从其中进行选择已注册用户输入用户名和口令,从而登陆到系统实现商品的搜索功能,其中涉及到表单的提交,然后访问数据库,显示符合条件的商品主页。提供登陆、注册和浏览页面的链接Index.asp用途说明页面BrowseListings.asp显示当前商品的简要资料供用户浏览、选购Search.aspRegister.asp实现新用户注册的功能,其中涉及到表单的提交,然后判别输入的数据的合法性,并将有效的新用户信息写入数据库。Login.aspAddUser.asp将用户数据(来自Register.asp表单)放入数据库的ASP逻辑。此页面没有用户界面Bidcar.asp实现购物车功能CheckLogin.asp包含根据数据库中的数据检查用户名和口令(来自Login.asp表)的ASP代码。此页面没有用户界面MenuForRegisteredUsers .asp表3-1 本系统的页面3.2 建立数据库像许多基于Web的应用一样,此应用的基本结构是建立在存储和检索信息的基础之上的。因此,需要支持某种形式的数据存储。我们将利用Access关系数据库来存放此应用的所有数据。首先启动Access,新建数据库,为数据库选择一个位置,此例选择目录E:Datastores。输入数据库名,这里为Taotao.mdb。然后向空的数据库中添加表,将在下一节介绍。3.2.1 数据模型数据模型由存储的表以及这些表之间的关系构成。并且通过在表中建立键的方式来唯一标识表中记录,这使我们能将这些记录连接到其它表中的记录。且可利用外键在两个表之间建立一个关系。1.User表User表用来存储访问系统的每个用户的信息。包括用户名和地址,及电子邮件地址。用户由一个唯一数字标识号来标识,这个号由Access生成的,并存放在UserID字段中。为了登陆系统,用户可通过给出自己的电子邮件地址和口令(其也在User表中)来标识自己。User表的结构如下:表3-2 User表的结构2.Item表表3-3 Item表的结构用于存放待售商品的描述信息、价格信息及当前状态信息。Item表结构如下:3. OrderTable表该表记录交易的详细内容,包括客户,所购买商品及定单状态等内容。见下表:表3-3 OrderTable表的结构4. DetailTable表该表记录每笔定单订购的商品及数量,其结构如下表:表3-4 DetailTable表的结构3.2.2 连接到此数据库用Windows 2000下的数据源(ODBC)建立好数据库的Dsn连接,Dsn名为taotao,指向建立好的数据库。做好了这些准备工作,就可以开始编码工作了。编码步骤为:l 定义数据库访问的DSN字符串MM_Taotao_STRING = "dsn=Taotao;uid=sa;l 数据库访问的SQL语句,打开数据库l 判断数据库中是否有数据l 排版输出标题l 数据库有数据则继续输出数据,排版输出读出的数据,记录下移一条,循环输出图3-1 使用ASP访问数据库执行结果l 关闭数据库执行结果如下图:3.3 编写应用系统程序 我们已经考察了组成此应用系统的ASP页面的结构,并且建立了数据库。下一步将建立构成此系统的页面。3.3.1主页系统的主页负责欢迎用户,以及其他页面的链接,这些页面是用户能:l 浏览销售物品l 登陆到系统(对于注册用户)l 进行注册用记事本或其他网页编辑器建立一个ASP文件,输入代码,用名字Index.asp保存此文件。这个系统的所有文件都应该保存在Web服务器可访问的一个文件夹中。我们将其保存在自己的inetpub/wwwroot/taotao(前两个是由IIS自动创建,我们自己可以创建最后一个目录来存放我们所有的ASP页),在浏览器中查看此页面,如图所示:图3-2 Index.asp页面3.3.2 用户注册和登陆1.采集用户数据为使新用户第一次能够注册,需要收集用户的个人数据,检查其口令,并将这些信息输入数据库。为处理这些工作,需要建立两个新页面:l Register.asp 负责收集用户数据图3-3 注册流程l AddUser.asp 将收集到的用户数据加到数据库,然后将用户转到MenuForRegisteredUsers .asp页面程序流程图如下:编写文件以文件名Register.asp保存到与Index.asp相同的文件夹。图3-4 Register.asp页面在用户填完此表单后,按确认按钮提交注册信息。在这一步,执行一个客户机端脚本(用JavaScript保证与大量浏览器兼容)分析两次输入密码字段的值,以保证它们相配。通过在表单提交时调用一个函数返回一个True或False结果判别相符与否。如果检查成功,则将表单内容提交给AddUser.asp,完成数据库更新工作。一旦此脚本完成用户自动转移到其他页面。2.处理注册数据编写代码保存为AddUser.asp,它将Register.asp页提交的信息(在Request对象的From集合中)放入数据库,且转到其他页面继续操作此系统。建立从AddUser.asp调用的包含文件,保存为Clssfd.asp,它利用ADO类型库(msado15.dll)并且它有两个功能:首先定义一个存放数据库连接的变量,然后建立并打开该连接。其代码中建立了ADO对象的一个实例,然后利用它打开了taotao.mdb数据库的一个连接。为此使用了Microsoft Jet data Provider for Access Database(在这里的Provider属性中指定)。其第二个功能是从User表中检索当前UserID值,一旦用户成功注册,这个用户会话的其余部分都需要这个值。通过一个名为blnValidUser的会话变量处理登陆用户(Ture为登陆False为注销)。使用SQL只查询UserID字段,返回记录集。返回到AddUser.asp,我们用objConn.Open打开数据库连接,且保证已填充了Session(UserID)变量。可对数据库增加必要数据。利用名为rsUsers的一记录集处理与User表的交互。再新建MenuForRegisteredUsers .asp代码,检查用户确已成功注册,成功后将转到此页。 图3-5 MenuForRegisteredUsers .asp页面3.处理用户登陆 系统给出一个登陆页面Login.asp和另一页面CheckLogin.asp根据数据库的内容检查用户数据,并转到其他页。为分析用户登陆数据,需要查询数据库的User表,所以用到SQL语句查询,需新建一个ADO Recordset对象。将SQL查询结果返回。通过比较用户名和口令,得到一个合法用户并将客户机转到MenuForRegisteredUsers .asp页。如果匹配不成功,则转到Register.asp或Login.asp页。图3-6 登陆流程图3.3.3 显示商品供用户浏览、选购用户(不管注册与否)都可利用BrowseListings.asp浏览待售商品。如果用户已经登陆,则需要识别他是谁。为此,需要查看会话级变量UserID的值,关于此用户所有信息都存储在会话级变量中,所以检索他很快也很方便。用一个记录集来存放当前待售物品的数据。这个记录集用一个SQL查询的结果来填充。这个查询从Item表中查询相关商品状态,之后进行购买。3.3.4 搜索功能此功能涉及到表单的提交,然后利用SQL访问数据库,显示符合条件的商品。程序流程为先判别输入的关键字是否为空,此处用到request对象和response对象来完成通讯,不为空则用SQL语句查询数据库,进行匹配,输出结果。3.3.5 购物车的实现购物车使用Cookies存放,其就是一个Cookies("gouwuche")变量,使用商品编号、数量、商品编号、数量.存放方式存储商品。首先通过request.querystring取得商品的编号,判断商品是否已经存在,加入商品编号和数量,返回主页面继续购物。3.3.6 用户查询定单用户选择我的陶陶后,进入mytaotao.asp,用户需先登陆,然后进入taotaomanager.asp页面,调用queryorder.asp通过SQL查询OrderTable表的UserID字段信息显示用户所有定单。3.3.7 改进设想 这个应用系统只起到供应商的作用,一个更强大的电子商务网站还可以提供一个供买主与卖主进行交易的平台,使出价与定价更加人性化变成拍卖的形式,提供更完整的服务。其次在许多模块功能上有待完善,例如:l 搜索功能现有搜索功能的实现仅局限于一个关键字的查找,需要用户输入的关键字和数据库中的关键字完全一致才能找到合适此商品。改进的方法是采用模糊搜索,也就是说只要数据库中的关键字段包含用户输入的关键字,即可显示商品。比如用户搜索“网页”,那么“网页制作”、“网页设计”等包含“网页”的书都会罗列出来。l 注册功能注册功能中对用户输入信息的判断不完善,比如用户名须为英文字符和数字等合法字符,长度也应该做限制;用户密码的位数要大于6位小于16位;用户的Email地址必须是合法的Email地址等。邮政编码必须有效等。l 用户进入购物车后,允许用户修改数量的功能没有实现。l 随着通信量的增大,从Access升级到SQL Server获得更强的功能。参考文献1 Visual Basic 6.0 使用指南 作者:Bob Reselman , Richard Peasley , Wayne Pruchniak.出版社:电子工业出版社2 Active Sever Page 3.0初级编程作者:David Buser , John Kauffman 钟鸣 译出版社:机械工业出版社 01信息二班 贺培 学号:200106010212