《本科毕业论文-—大型特买网站的购物车子系统开发.doc》由会员分享,可在线阅读,更多相关《本科毕业论文-—大型特买网站的购物车子系统开发.doc(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、武汉轻工大学毕业设计(论文)毕业(论文)设计(题目):大型特买网站的购物车子系统开发姓 名何正义学 号100511223 院 (系)数学与家算计学院专 业网络工程指导教师刘东名字不能写错2014 年 5 月8日目 录摘 要IABSTRACTII前 言1第1章 系统概况与介绍21.1 背景及当前研究现状21.2 系统介绍31.3 开发工具介绍41.4 需求分析51.5 系统功能介绍6第2章 系统结构与设计72.1 设计概述72.2 系统结构72.3 系统详细设计8第3章 具体功能实现93.1 用户模块93.2 商品浏览与添加113.3 购物车设计与实现123.4 后台管理设计15第4章 关键技术
2、分析164.1 系统的安全及稳定性164.2 DES加密164.3 ADO.NET访问数据库16第5章 测试及总结175.1 测试17 5.2 总结17致 谢18参考文献19附 录 1 系统中使用的代码17页码有问题 摘 要摘 要 : 随 着 网 络 的 飞 速 发 展 ,网 上 购 物 已 经 走 入 日 常 生 活,因 此 各 类 在 线 网 站 开 发 一 个 方 便 、快 捷 和 人 性 化 的 购 物 系 统 是 非 常 必 要的 。而 购 物 车 在 购 物 网 站 中 又 是 一 项 非 常 重 要 的 功 能 。购物车系统主要包括以下业务:首先是用户业务,主要包括浏览商品,添加
3、商品到购物车。其次是管理员业务,主要是管理商品,包括对商品的添加、删除和更改。 本系统利用Session方法设计并实现了一个购物车。利用Session的功能,可以将购物信息(商品ID和购买数量)存储到Session变量中,Session方法将数据存储在服务器端的Session(cart)中。Session方法实现的购物车运行稳定,性能良好。本系统基于B/S体系结构和ASP.NET开发平台,使用C#语言编写,用Access数据库作为后台数据库,其中在网站的前台页面中,也广泛利用了JQuery技术。关键词:购物车; ASP; 数据库换成JQuery; Session; DES。AbstractAb
4、stract:With the rapid development of Internet, online shopping has entered everyday life,so all kinds of online sites to develop a convenient, fast and user-friendly shopping system is necessary.And the shopping cart in the shopping website is a very important function.Shopping cart system includes
5、the following features:First is the user services, including browsing products, adding items to the shopping cart.Followed by the business administrator, primarily management of products, including products to add, delete and change.This system using the method of the Session to designed and impleme
6、nted a shopping cart.Use Session feature allows you to stored Shopping Information (product ID and purchase quantity) in the Session variable,then data the is sent to and stored on the server side Session (cart).By Session method implementation ofShopping Cart is running stability, good performance.
7、The system is based on B / S architecture and the ASP.NET development platform, using C # language, using Access database as the back-end database, which the sites front page, also made extensive use of JQuery technologies.Key Words:Shopping Cart; ASP; Database; Session; DES.前 言随着互联网,特别是Web技术的飞速发展,网
8、站在人们生活中扮演着越来越重要的角色,越来越多的商人认识到网络能给商店带来无以伦比的便捷和无限商机。电子商务就是一个很好的体现。现在的Internet也已从单纯的学术科研逐步向综合性商业网络发展,高速发展的互联网技术为网上购物系统的发展提供了强大的动力,同时网上购物环境已经逐步得到了改善。网上购物对人们的吸引力也越来越大,网上购物将更加平民化,也为网上在线购物提供更加宽广的发展空间。购物网站,简单地说就是利用网络进行的商务交易,已经不是传统意义上的通过当面交换或者面对面的方式进行的贸易,而是一种系统的、完整的网络方式的运作。在一个购物网站中,通过网上购物模块,从服务器发布商品信息,公告,到供客
9、户浏览、查询所需要的商品、提交定单、结账等,涉及到企业和顾客两个方面,是一个多项技术的集合体,包括提交数据(下订单、客户留言)、交换数据、获得数据(共享数据库、公告栏)的同时它还是一个动态的网站。所谓动态网站,应该有以下三个特点:首先是“交互性”即网页根据用户的要求和选择能动态地改变和回应;其次是“自动更新”即无须手动地更新html文档,而是自动生成新的页面;最后是“因时因人而变”即当不同的时间、不同的人访问同一网址时产生的页面并不相同。而购物车是一个购物网站的核心部分,购物车是顾客在进行网上购物时所必须使用的购物工具,可以说是一个购物网站的心脏,它实现了客户与商家的交互性,主要体现在客户对商
10、品的添加,修改和提交。它用来临时存储用户选择的商品,协助顾客从虚拟商场中选取商品、携带商品,并到虚拟的收银台结账,然后商家在网站后台对客户数据进行回应。方便,稳定和人性化的购物车更能赢得客户的青睐,也为商家快速处理客户提交的商品订单信息创造有利条件。 鉴于对购物车子系统的认识和理解,运用ASP和Access技术设计了一个比较全面又操作简单的购物车子系统。ASP基于公共语言运行库,做网站时可以选择最适合自己的语言;ASP从简单的表单提交和客户端身份验证站点部署和配置,使它相对容易的任务执行;ASP随附了一个设计好的结构,它使开发人员可以直接插入代码。Access数据库有已经设计好的模板,存储方式
11、简单,易于维护管理。这两项技术易于设计全面而又简单的购物车系统。另外,Browser/Server (浏览器/服务器,简称B/S)网络结构模式作为传统C/S模式的扩展,为网上购物网站系统的建设提供了更为实用的技术手段。在信息安全方面,系统采用的是DES加密算法,保证了用户重要信息的安全性。在以下章节将详细介绍购物车子系统的设计与实现。1系统概况与介绍1.1背景及当前研究现状购物网站是电子商务网站的一种基本形式之一。网络购物系统是在网络上建立一个虚拟的购物商场。这不仅有利于商家树立自己的品牌形象,宣传企业文化,提高员工的工作效率,有效地控制“商店”的运营成本,减少管理费用,还可以让客户更方便,更
12、快捷地购物。购物者足不出户地购物和付款交付等使购物过程变得轻松、快捷,适合现代人快节奏的生活。网上销售网站的构建类型有商店和商店之间的电子商务活动 (B2B)和商店与顾客之间的商务活动(B2C)以及消费者对消费者的电子商务(C2C )。目前国内已有多家这样的网站,如天猫、当当网等。鉴于大型商场的经营性质和赢利方式,该系统通过B2C型网站为购物环境来开发和实现。电子商务购物网站的关键技术之一就是购物车子系统的设计与实现。购物车系统还有一些其它称呼如:网上购物系统、网络购物系统、网上开店系统等,它们实质上都是一样,就是电脑程序结合数据库开发的网站系统。只要使用了购物车系统,商家就可以简单建立一个功
13、能齐全的网上商城,实现用户注册、产品展示、在线交流、在线定购、在线支付等电子商务功能;一般的购物车系统还集成了产品发布与查询、会员注册登录、在线订单、在线支付、在线交流等完善的网上销售功能。网上购物车的实现并非像以上叙述的那样简单。实际上,网上购物车的脚本是比较难建立的脚本。究其原因,得先理解一个基本的Web浏览事务后面的支持机制。其一,Web的设计是无状态的,即所有服务器以同样方式处理URL请求,与前面的任何请求无关;其二,浏览器也是以无状态的方式工作,采用与前面请求无关的方法来处理新的URL。例如,当用户启动自己的浏览器并向服务器请求一个URL(或是一个HTML页面,或是一个CGI脚本)时
14、,浏览器会首先找到服务器,建立一个连接,然后请求该URL,服务器处理浏览器请求并返回所需数据后断开连接,就会忘记刚才浏览器访问的信息。用户与服务器建立连接时,就像从来没访问过服务器一样,并且每个请求都有一个应答,这就是无状态连接(Stateless Connection)。同时,服务器也不会记住用户,并且不会识别这是用户第1次访问还是第100次访问。这种无状态连接的方式使得Web服务器处理浏览器得更快、更有效,也不需要维护请求URL的浏览器的信息,但也会导致许多问题网上购物车就是一个例子:当顾客选中某商品,将它放人自己的购物车时必须记住是商品名称和商品数量,最后到提交订单时,知道应该付多少钱。
15、由于服务器不会记住这些信息,同样也不能让顾客每次看见一个新页面时都重新输入已选择商品的信息,只能让脚本自己记录所有前面用户选择的商品信息。为了实现购物车子系统,解决Web应用程序的无状态连接,从而保存浏览器端的网上购物车内商品信息。目前已知有隐式窗体字段方式和HTTP协议使用的Cookie方式以及Session+Dictionary等多种实现方法。(1)隐式窗体字段方式网上购物车类型的脚本可以通过隐式字段来解决无状态连接问题,这样当用户再次访问浏览器时,就能获得上次调用后的隐藏信息。网上购物车中的所有商品都有三个属性:数量、价格和详细。当用户购买两斤橘子,每斤橘子1元,购物车就会把信息“21O
16、range;”形成字符串,然后将字符串写入隐式字段,分号标志记录的结束,记录中的字段之间用斜杠分开,同时允许任意数量的记录汇集成一个长字符串。当需要分离信息时,网上购物车简单地搜索分号和斜杠即可分解出选中商品的信息。隐式字段是不显示用户无法修改的字符串,网上购物车隐式字段窗体是由CGI(通用网关接口)程序处理其他窗体提交数据时动态创建的。服务器向浏览器发送信息时,CGI程序将所有商品信息以隐式字段方式写入脚本;用户提交包含隐式字段的窗体时,字段中原先存放的商品信息返回服务器,服务器分解出隐式字段中存放的商品信息,从而保存了用户网上购物车内的商品信息。(2)Cookie方式Cookie是由服务器
17、端生成,发送给客户端(一般是浏览器),浏览器会将Cookie的key/value保存到客户端目录下的文本文件内,下次请求同一网站时就发送该Cookie给服务器(前提是浏览器设置为启用Cookie)。Cookie名称和值可以由服务器端开发者自己定义。浏览器从Web服务器请求一个URL时,浏览器检索Cookies文本文件,查看某个Cookie的URL请求是否符合请求的URL。然后,浏览器在URL请求中发送符合请求的Cookie中包含的信息给Web服务器。在网上购物车的实现过程中,当用户选择了要购买的商品并放入网上购物车时,系统采用Cookie方式处理,将选择商品的信息以文本串的形式写入浏览器本地机
18、的文本文件中,当下一次激活网上购物车时,Cookie方式会从浏览器本地机的文本文件中读取相应文本串的信息,从而获得了购物车中已选择商品的信息。(3) Session、Dictionary介绍 Session对象存储特定用户会话所需的信息。Session对象是在每一位访问者从Web站点或Web应用程序中首次请求一个ASP页时创建的,它将保留到默认的期限结束或通过脚本设置中止的期限。这样,当用户在应用程序的Web页之间跳转时,存储在Session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。利用Session的功能,可以将购物信息(商品ID和购买数量)存储到Session变量中。 为了
19、更加灵活实现的“购物车”,设计过程中还可以引进Dictionary对象。Dictionary 对象与关联数组是等价的,Dictionary对象用于数组,可以存储key/item数据对,其中key的值是惟一的,而item的值可以重复,且item项与key项相关联。这样key可以用来存储购买商品的ID,而item则可以存储购买商品的数量。【基于ASP购物车的设计与实现 期刊论文信息技术,2012年 吴代文】1.2系统介绍 本系统采用Browser/Server(浏览器/服务器)三层结构实现。B/S (Browser/Server)结构即浏览器和服务器结构。它是随着中间件技术的成熟而兴起的,对C/S
20、结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓的三层结构。所谓三层体系结构,是在客户端与数据库之间加入了一个中间层,也叫中间件。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。 三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通讯与中间层建立连
21、接,再经由中间层与数据库进行交换。中间层作为构造三层结构应用系统的基础平台,提供了以下主要功能:负责客户机与服务器、服务器与服务器间的连接和通信;实现应用与数据库的高效连接;提供一个三层结构应用的开发、运行、部署和管理的平台。这种三层结构在层与层之间相互独立,任何一层的改变不会影响其它层的功能。采用基于B/S模式设计的系统具有如下几个特点:用户无需考虑系统的安装和维护;展示铺面美观、友好能够吸引客户眼球;顾客可以方便的查询并订购商品;管理员可以方便的定义各种商品信息;系统选用强大的数据库保存各类信息;系统支持多种浏览器,无需考虑浏览器兼容性问题。1.3开发工具介绍1.3.1 ASP.NET介绍
22、ASP.NET是由微软的.NET技术细化而来的,跟ASP技术有些关系,是一个统一的Web开发模型,也是一种使嵌入网页中的脚本可由因特网服务器执行的服务器端脚本技术,它可以在通过HTTP请求文档时再在Web服务器上动态创建动态服务器页面,运行于IIS(Internet Information Server 服务,是Windows开发的Web服务器)之中的程序。ASP .NET的网站或应用程序通常使用微软公司的IDE(集成开发环境)产品Visual Studio进行开发。与静态HTML网页相比,ASP网页具有以下特点:(1)利用ASP可以实现突破静态网页的一些功能限制,实现动态网页技术;(2)AS
23、P文件是包含在HTML代码所组成的文件中的,易于修改和测试;(3)服务器上的ASP解释程序会在服务器端执行ASP程序,并将结果以HTML格式传送到客户端浏览器上,因此使用各种浏览器都可以正常浏览ASP所产生的网页;(4)ASP提供了一些内置对象,使用这些对象可以使服务器端脚本功能更强。例如可以从web浏览器中获取用户通过HTML表单提交的信息,并在脚本中对这些信息进行处理,然后向web浏览器发送信息;(5)ASP可以使用服务器端ActiveX组件来执行各种各样的任务,例如存取数据库、发送Email或访问文件系统等;(6)由于服务器是将ASP程序执行的结果以HTML形式传回到客户端浏览器,因此使
24、用者不会看到ASP所编写的原始程序代码,可防止ASP程序代码被窃取;(7)方便连接数据库;(8)开发需要有丰富的经验,否则会留出漏洞,让骇客(cracker)利用进行注入攻击。1.3.2 Access 数据库Access是微软把数据库引擎的图形用户界面和软件开发工具结合在一起的一个数据库管理系统。它以自己的格式将数据存储在基于Access Jet的数据库引擎里。它还可以直接导入或者链接数据(这些数据存储在其他应用程序和数据库)。在开发一些小型网站WEB应用程序时,用来存储数据,例如ASP+Access。这些应用程序都利用ASP技术在Internet Information Services运行
25、。Access作为一种关系型数据库管理系统,其主要特点如下:(1) 面向对象 Access是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种功能对象化,将数据库管理的各种功能封装在各类对象中。它将一个应用系统当作是由一系列对象组成的,对于每个对象它都定义了一组方法和属性,以定义该对象的行为和外国,用户还可以按需要给对象扩展方法和属性。通过对象的方法、属性完成数据库的操作和管理,极大地简化了用户的开发工作。同时,这种基于面向对象的开发方式,使得开发应用程序更为简便。 (2)界面友好、易操作 Access是一个可视化工具,是风格与Windows完全一样,用户想要生成对象并应用,只要使
26、用鼠标进行拖放即可,非常直观方便。系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、查询向导、窗体向导等工具,使得操作简便,容易使用和掌握。 (3)集成环境、处理多种数据信息 Access基于Windows操作系统下的集成开发环境,该环境集成了各种向导和生成器工具,极大地提高了开发人员的工作效率,使得建立数据库、创建表、设计用户界面、设计数据查询等可以方便有序地进行。1.3.3 IIS IIS(Internet Information Server,互联网信息服务)是一种Web(网页)服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏
27、览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。IIS意味着你能发布网页,并且有ASP(Active Server Pages)、JAVA、VBscript产生页面,有着一些扩展功能。IIS支持一些有趣的东西,象有编辑环境的界面(FRONTPAGE)、有全文检索功能的(INDEX SERVER)、有多媒体功能的(NET SHOW)其次,IIS是随Windows NT Server 4.0一起提供的文件和应用程序服务器,是在Windows NT Server上建立Internet服务器的基本组件。它与Windows NT Server完全集
28、成,允许使用Windows NT Server内置的安全性以及NTFS文件系统建立强大灵活的InternetIntranet站点。1.4需求分析购物车子系统的开发是为了满足一般用户的上网购物需求。子系统主要功能分为浏览购物和系统管理两大模块。其中浏览购物模块的功能由购物者体现,用户可以进行各类商品信息的浏览,如果想要购买商品可以注册会员然后将选购的商品放到自己购物车并提交订单。系统管理功能由发布商品的管理者使用,可以实现对用户管理和商品信息管理、订单管理、动态新闻管理等功能,同时可以处理用户下达的订单。通过对学生购物的调查,用户对于购物车子系统的需求有这样几点:用户对所用工具购物车进行操作,同
29、时形成商品详细订单价格记录给用户查看确认;用户可直接查看购物车的基本情况,如果用户根据本人用户名和密码登录系统,还可以进行本人情况的查询和维护部分个人信息。用户还可以即时查询和更改本人的情况和个人信息。其次,管理人员功能的信息量大,数据安全性和保密性要求较高,管理员需要管理用户的用户信息级统计情况,这需要一定的保密性,同时还要对商品进行管理,比如对商品信息的更改和新添加商品以及删除商品。管理员最重要的一个功能是对用户订单进行管理和处理。当用户产生订单并提交时应及时反应倒数据库中进行相应的更新操作,以免发生用户浏览的信息与数据库中信息不符的情况。1.5系统功能介绍在购物网站的购物车子系统功能之中
30、,重点是购物功能,即客户在浏览商品时,将商品添加到自己的购物车当中,在添加之前,可以实现对商品信息的详细查看,以及商品数量的选择,添加完之后,可以查看购物车内容、生成订单、显示订购单及删除指定定单等相应功能。同时,购物车功能需要以下一些功能的辅助,才能保持系统的完整性以及稳定运行:(1) 首页需要实现的功能:广告动态显示,分类目录,公告,推荐商品展示。分类目录是首页的商品可以按类别显示在不同的页面。公告是管理员提供给用户的信息。推荐商品展示是管理员指定推荐的商品。(2) 会员注册和登录:用户可以通过每个页面的页头处点击“登录”,只有注册用户才可以将商品放入购物车并提交订单,没有注册的用户可以在
31、每个页面的页头处点击“注册”进入注册页面。(3) 浏览、购买商品:用户可以点击任一商品图片进入商品详细信息页面,在这个页面上用户可以把商品放入购物车进行购物。放入购物车后,经过确认得到订单,就完成了一次购物。(4) 后台的登录:管理员有一个固定的账号进行后台登陆。(5) 用户信息管理:用户可以对自己的信息和密码进行修改。(6) 后台商品管理:实现对商品的添加、删除、修改等操作。(7) 后台订单管理:实现订单查询等。2系统结构与设计新章换页,或许是我的版本问题引起的。2.1设计概述设计购物车子系统的主要目的是实现购物网站的前台的浏览商品和添加商品到购物车的购物功能以及后台的管理订单和商品的功能,
32、要求前台功能和后台功能都比较完善,需要严格的用户认证功能。前台功能主要包括:用户登陆、注册,用户信息修改,用户密码修改,购物车,提交订单订单并管理,已结订单管理,商品展示,商品详细信息显示,网站公告显示,最新商品排行榜,网站推荐商品展示,合作品牌等功能。后台功能主要包括:管理员登陆,管理员账户密码修改,首页公告管理,商品管理,订单管理等功能。本系统前台页面和后台功能均在Visual Studio2010中设计,基于C#、JavaScript语言和JQuery技术,利用Access数据库作支持,将整个购物车子系统设计成为动态的交互式的Web站点,保证网站的稳定运行,信息安全方面,系统采用DES加
33、密算法。 购物车子系统是购物网站别说是“购物网站”,包括上面和下面最好说的是“特卖网站”的核心功能模块,它记录了顾客在购买商品过程中的商品的详细数据变化情况。本系统的设计是以实际应用为背景,用户方便快捷的操作为前提,在设计过程中,尽量使各种功能操作友好人性化。另外,购物车子系统有很强的可扩展性,如果系统再集成产品发布与查询、会员等级制度、在线订单、在线支付、在线交流等功能模块,那么就可以形成一个完整的电子商务网站,这也从另一方面体现了购物车子系统的重要性。2.2系统结构 根据对购物车子系统的需求分析,主要将系统结构设计成两个模块,首先是用户模块,其次是系统管理模块。 在网站的首页,有一个登录模
34、块,用户登录之后,首页显示用户名,在首页设有“产品分类”、“我的购物车”、“网站公告信息”等超链接。用户如需购物,便可在相关产品分类下面进入特定的商品详细信息界面,然后将商品放入购物车。用户点击“我的购物车”超链接,进入我的购物车,此时还可进行产品删除的操作。若用户点击“显示订购单”超级链接,下方框架将会显示订购单网页,用户在对订单细目核对后,便可进行订购了。用户模块如图1所示: 商品操作 生成订单 网站信息 我的购物车 浏览商品 系统首页 登录或注册同样,在网站的首页也有一个管理员入口,登录之后,进入管理员模块,因为有了管理员这个模块,管理员能对系统进行更新和维护,系统能够保持正常稳定运行,
35、管理模块如图2所示: 商品管理 订单管理 用户管理 系统首页 登录商品增删查改用户信息查询2.3系统详细设计2.3.1 商品页面设计 在设计购物车子系统之前,设想用户为学校学生,所以将商品主要分为三类,分别是服装饰品,学习资料和生活用品,在服装饰品下,又详细分为男生区、女生区和饰品区;在学习资料也可分为考研资料、四六级等;生活用品分为电子产品体育用品等。每种商品分类都对应相应的数据表,这样分类不仅方便用户购物,也便于管理员对商品的科学管理。2.3.2购物车主体设计购物车的主体设计主要体现在四个方面:首先是添加数据,也就是用户将所要购买的的商品添加到自己私人的购物车当中,这就需要将商品的数据添加
36、到个人购物车表中;其次是读取个人购物车数据库中所有产品的信息并在购物车网页中通过GridView控件显示出来,也就是用户查看自己的购物车;然后是用户更具自己需要来选择是否购买商品,如果有意向购买,可以通过复选框选中商品并生成订单,后台将用户生成订单的商品的数据提交到订单的表格中;最后,如果购物车有一些商品用户不想保留了,在GridView控件的最后一列有一个删除功能,可以将商品移出购物车,同时后台也将个人购物车数据表中该商品的数据删除。2.3.3 购物车数据库设计购物车子系统的数据库采用Microsoft Access ,也可以采用其他数据库,这时只要改变源文件中的库链接代码即可。本系统的数据
37、库库文件为User. mdb ,数据库有这样几张表,首先是用户信息表,用户信息表包含用户的用户名以及密码和联系方式,用户在登录时,验证表格中的密码,如果密码正确,进入购物页面,忘记密码可以:字段名称商品ID商品名称商品价格商品介绍详细信息数据类型自动编号文本数值文本文本表格要有标注用户在商品页面点击“我的购物车”按钮时,后台检测是否有改用户的购物车表格,如果有,直接将商品添加到其购物车表内;如果没有该用户的购物车表,新建其购物车表,再将商品添加到其购物车内。个人购物车表:字段名称商品ID商品单价商品数量小计是否购买数据类型自动编号数值数值数值布尔型 用户在购物车页面生成订单并提交,管理员对所有
38、用户的订单进行管理,所以有一张订单管理表格:字段名称订单编号用户ID商品ID时间数据类型自动生成文本文本日期时间3 具体功能实现3.1用户模块用户模块从用户注册开始,在首页有两个按钮,分别是登录和注册,如果用户是初次浏览该网站,可以先注册,在注册页面,用户需要填写用户名,密码和确认密码,以及QQ和邮箱。对于用户名,必须是未经注册的,所以后台在将用户名在保存到数据库之前先查一下数据库 string sql = select count(*) from user where username = +txt_user.Text+; int count = Convert.ToInt32(SqlHel
39、per.ExecuteScalar(SqlHelper.Conn, CommandType.Text, sql); if (count 0) flag = true;存在 else flag = false;注意代码排版不存在。另外,用户在注册填写QQ和邮箱时,必须按规则填写,比如QQ必须是五到十位的数字,同样邮箱地址必须填写正确,需要用到这样两个验证控件RequiredFieldValidator、RegularExpressionValidator,以及正则表达式,两个正则表达式分别为:ValidationExpression=1-3d4,9*; ValidationExpression=
40、w+(-+.w+)*w+(-.w+)*.w+(-.w+)*。 在用户注册和登录的时候,为了保护用户重要信息的安全,系统采取了DES加密算法,对用户的密码在发送到服务器的过程中,进行了加密: public string Encrypt(string sourceString) byte btKey = Encoding.Default.GetBytes(key); byte btIV = Encoding.Default.GetBytes(iv); DESCryptoServiceProvider des = new DESCryptoServiceProvider(); using (Memo
41、ryStream ms = new MemoryStream() byte inData = Encoding.Default.GetBytes(sourceString); try using (CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(btKey, btIV), CryptoStreamMode.Write) cs.Write(inData, 0, inData.Length); cs.FlushFinalBlock(); return Convert.ToBase64String(ms.ToArray(); 用户
42、在注册和登录之后,都会触发 OnclickClient=return isempty()函数,将 Session用户名 = txt_user.Text;传递个多个页面,同时其它页面在Page_Load 时检测是否有Session,如果有,页面上某个Label控件会显示用户名;如果没有,这个Label控件会显示提示登录。如果想要退出账户但不退出网站,可以点击退出登录,后台将调用Session.Abandon();清除页面上的所有Session。用户注册和登录功能如图所示: 把这个窗口放在3。1用户模块下,让用户先看到窗口,后看到代码。另:窗口不应该是运行后的窗口,而是设计时候的。下同!3.2商品
43、浏览与添加 商品根据种类不同,大概分为三类:服装、学习和生活。在首页的导航栏可以分别链接到这三个页面,在这三个页面中,又有详细分类,对于详细分类是用JavaScript实现Div隐藏,需要时点击就可以显示,这样可以节约网站资源,同时也方便用户购物。 商品排列页面的实现主要运用了这两个控件:ListView、DataPager。ListView控件主要是来显示商品的三个信息:商品图片、商品名称,商品价格。另外,由于商品数量过多,一个页面不能全部显示,所以要对商品分页处理,需要用到DataPager控件。将DataPager 控件和ListView控件的结合运用使得商品的排列规划统一,让用户有一个
44、友好的购物界面。商品排列界面如图所示:如果用户想了解商品的详细信息,可以直接点击商品图片,进入商品的Detail页面,这之间的不仅需要实现页面跳转,而且还要将商品的信息传递到Detail页面,跳转语句: a href=Detail.aspx?id= & small=cloth1/ &big=cloth1/ &big2=cloth1/ 。这条语句在实现跳转时,传递了四个参数,分别是id、small、big和big2,第一个参数是商品的ID,剩下的都是商品的图片信息。在Detail页面,根据商品ID查询,从数据库中将商品的详细信息显示在这个页面。商品信息的详细显示给用户选择是否购买提供了依据。同时
45、,Detail页面也是商品页面和购物车之间的桥梁,用户点击“加入购物车”,将商品的ID,数量等数据放入到用户的购物车当中。商品详细信息界面:3.3购物车设计与实现购物车页面的现实主要是利用GridView控件实现,该控件中包含8列数据,分别是:选择、编号、图片、商品名称、数量、小计、删除。用户在点击“我的购物车是”,通过Session“用户名”将用户名传递到购物车页面,页面后台根据这个用户名查找用户的购物车表格,这里购物车的表格是直接用户名命名的。后台GridView查找数据的语句如下:string sqlstr = select * from +username;cmd = new OleDbCommand(sqlstr, hConnection); OleDbDataAdapter myda = new OleDbDataAdapter(sqlstr, hConnection); DataSet myds = new DataSet(); myda.Fill(myds, username); GridView1.DataSource = myds; GridView1.DataBind();点击图片列中的图片具有连接到该商品详细信息页面功能,同时,用户也可以通GridView控件中的数量列来改变商品的数量,每一行
限制150内