




已阅读5页,还剩66页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南昌航空大学学士学位论文第一章 前 言随着Internet的迅猛发展,电子商务已逐渐走向千家万户,它已经开始影响人们的日常生活的各个方面,同时我们也开始意识到其中蕴含的巨大商机及商业价值,并开始投身于电子商务活动。电子商务可以通过IE浏览器,实现消费者的网上购物,卖家及中介人之间的交易,它是在线网银支付的一种新型商业运营模式。电子商务是网络技术应用的全新发展方向。Internet本身所具有的开放性、全球性、低成本、高效率的特点,也成为电子商务的内在特征,并使得电子商务大大超越了作为一种新的贸易形式所具有的价值。它不仅会改变企业本身的生产、经营、管理活动,而且将影响到整个社会的经济运行与结构。电子商城的崛起对传统的购物方式体系产生了强烈的冲击,有效地缩短了货物发行环节,将广大消费者和营销商紧密地结合在一起,大大提高了物质流通率。淘宝网以及当当网已经为我们做出了巨大的榜样,它也告诉我们,在网上开设商城是完全可行的,电子商城利用网络这个平台出售各式各样的货物,其中包括电子产品,食品,化妆品,服装,宠物等,实现了坐在家里就可以轻松购物。顾客可以通过网站浏览到各式商品,使用网银直接选购其所需要的商品,通过邮政部门以及各个快递公司把货物送到顾客家中。购物网站的优点是购物的便捷和快速,提高了购物效率。顾客也可以给店主留言,写下意见和感想。目前,中国网民已经突破2亿大关,网站数量已达到131万个,其中16.7%的网民经常访问购物网站,随着国内上网费用的下调以及网速的大幅度提高,浏览购物网站的网民总数也会稳步提升。由此可见在网上开商城已经是大势所趋的。通过以上数据,我们可以欣喜的发现在网上开设商城的优势:(1)投资少,见效快;(2)销售时间不受限制;(3)销售地点不受限制。本次毕业设计主要是使用HTML基本语言,ASP、Vbscript脚本语言、DREAMWEAVER等设计网页,使用数据库知识(ACCESS)设计数据库,使用SQL语句完成查询,修改,删除数据等功能,最后完成整个电子商城系统的调试。第二章 设计方案本次毕业设计使用的ASP(Active Server Pages),它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不必使用微软的产品就能编写它的代码,也可以产生和执行动态、交互式、高效率的服务器应用程序。运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。ASP容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由于脚本在服务器上而不是在客户端运行,ASP所使用的脚本语言都在服务器上运行,用户端的浏览器不需要提供任何别的支持,这样大大提高了用户与服务器之间的交互的速度。此外,它可通过内置的组件来实现更强大的功能,如使用ADO就可以轻松地访问数据库。此次电子商城系统采用B/S(浏览器/服务器)模式开发,在此模式下,用户主要通过客户端浏览器浏览系统的工作界面,极少部分事务在浏览器端(Browser)实现,主要事务在服务器端(Server)实现。这种模式通过IE通信,不受地域的限制。从而减轻了系统维护和升级的成本和工作量,降低了用户的总体成本。电子商城系统的特点是用户在客户端登陆系统,然后浏览,管理或购买系统中的商品。该系统面向的用户是不确定的。如果要求用户下载安装软件才能浏览商品,会增加用户浏览商品的难度,大大减少用户数量。电子商城系统应该支持跨平台管理,其用户不必下载安装软件。B/S模式支持跨平台操作,只需安装浏览器即可。因此电子商城系统利用这种模式实现。从而为不同用户提供了统一的界面,使得界面易于维护。随着Microsoft公司的不断改进和完善,ACCESS正逐渐成为目前最为方便的中小型数据库管理系统。ACCESS支持的SQL指令非常齐全。同时ACCESS驱动程序的执行效率非常高。使用ACCESS数据库开发系统易于开发者掌握并解决可能发生的问题。 基于以上原因在本次设计中使用ASPACCESS来实现本课题。第三章 电子商城系统的设计与分析3.1 电子商城系统简介该电子商城系统是基于WEB开发的,以构建网上电脑产品购物网站为目标,由前台购物、后台管理两大部分组成。电子商城系统主要实现用户注册、用户登录、分类浏览商品、查看商品介绍、购物车、在线购买、浏览新闻公告、商品的投诉以及商品管理、新闻公告管理、投诉管理,会员管理等功能。根据这些功能要求,将整个系统分为两大部分:一部分是用户使用部分,包括用户登录、分类浏览,购买商品,在线支付等;另一部分是后台管理部分,这部分功能必须通过管理员身份验证才能使用,包括商品管理、新闻管理、商品投诉管理和会员管理,客户也可以通过论坛来提出意见和建议。电子商城系统就是要通过方便快捷的功能、简洁明了的界面、完善的后台管理来满足服客户的需要。3.2 软件目标设计(1)系统的用户登录和身份验证;系统允许用户注册,注册的用户需要身份验证才能发布商品;用户进入系统时,需要进行身份验证;只有特定权限的用户才能进入特定权限的界面。(2)在线销售商品:无论是注册用户,还是未注册用户都允许浏览所有商品,并查看所有商品的详细信息;无论是注册用户,还是未注册用户都允许按类别查找商品;允许注册的用户通过在线付款形式购买商品;系统为注册用户提供购物车,并允许用户管理购物车。(3)在线管理商品:只有管理员才可以在线管理商品,即管理商品时需要验证管理员身份;不同级别的管理员只能管理相应的商品,如系统管理员可以管理系统中所有的商品,一般管理员只能管理自己上传的商品。(4)在线管理用户:系统管理员可以添加,验证和查询用户;系统管理员可以修改系统中的任何用户信息;系统管理员可以删除任何用户。(5)在线管理公告:系统管理员可以添加公告;系统管理员可以修改公告;系统管理员可以删除公告。(6)在线管理投诉:任何购买了商品的用户都可以发表对购买商品的投诉;只有管理员才可以删除已经回复的投诉;管理员可以处理投诉,也可以通过回复投诉问题来解决问题。3.3 设计原则软件系统开发设计原则一般包括以下四个方面: (1)经济,实用的原则;(2)兼容性原则;(3)可靠,有效性原则;(4)安全性原则。由于本电子商城系统只是一个毕业设计作品,要成为可行性系统还需要很多改进。因此,在本系统的开发过程中,并没有象上面提到的那样严格地按照要求来进行制作开发,只是在对网上购物网站了解的基础上,尽可能地使本系统所完成的工作符合实际。另外考虑到了系统的易操作性,因此在系统的界面设计过程中,尽可能地为用户提供了一个友善、清晰简洁的网络界面。 3.4 设计思路本课题为电子商城系统的软件设计,在图书馆关于该课题的信息比较多,所以在对它进行总体设计的时候,首先对ASP的6大对象做了几周的学习,了解了其中各大对象的一些属性和方法。又花了一些时间学习SQL语句,用ACCESS对后台数据库进行了设计。在完成数据库的设计后,开始对网站页面进行设计。对用户权限以及网站的安全性进行了考虑,使用DoChar()函数屏蔽了一些特殊的字符,如一些非法用户会在IE地址栏键入一些SQL语句非法连接数据库,正是使用此函数把一些非法的字符替换成空格符输出,以及在数据库的设计中加入Check字段来检测用户是否为验证用户,非验证用户只能浏览网站的部分功能。最后,在基本功能实现以后,再对网站进行反复地测试和修改,以期望达到最好的效果。3.5 需求分析该系统是基于B/S(浏览器/服务器)架构的系统,主要完成商品的浏览,购买,以及在后台管理商品;新闻公告的添加、删除、修改(更新),会员的在线购物与对商品的投诉,用户在论坛上抒发自己的感想等。此系统分为前台购物和后台管理。前台购物是友好的操作界面,供用户注册、浏览、订购商品;后台管理是提供给管理员的,其中包括:商品管理、用户管理、公告管理,投诉管理等。使管理员从繁琐的手工操作中解脱出来,并提高了工作效率。按照系统功能的实现,本系统可以划分为以下几个功能模块:管理用户模块,管理商品模块,管理商品类别模块,管理商品投诉模块,管理公告模块等。管理用户模块包括了用户注册和验证,修改用户信息,修改用户密码以及删除用户。管理商品模块包括商品上传,修改商品信息,删除商品,增加商品图片,以及修改和删除商品的销售记录和浏览记录。管理商品类别模块包括添加,修改,删除商品类别等功能。管理商品投诉模块包括回复商品投诉,解决商品投诉问题和删除商品投诉,商品投诉需要保存商品的编号,购买商品的订单号及购买时间等信息。管理公告模块包括添加,修改,删除公告,公告包括公告的标题,公告的内容,以及发布时间等信息。由于电子商城的商品数量可能非常庞大,因此在商品浏览上,使用了分页浏览导航。用户可以通过点击上一页、下一页、首页、尾页进行分页浏览。该系统对可靠性、易维护性、安全性、可操作性等性能有较高的要求。可靠性-要求系统在发生故障或输入数据不合理等情况下有较高的要求;易维护性-系统的变更(因系统需求变化和弥补系统缺陷而引起)要简单易行;安全性-本系统所处理的数据都要具有实际意义,不能随意存取和改动。因此,必须对系统数据的存取和改动进行控制,对系统数据进行有效的保护,以杜绝对数据的非法操作和防止计算机病毒的破坏;可操作性-本系统的操作人员是一般管理人员而非计算机专业人员,为使本系统有效地发挥作用,要求本系统容易理解,人机界面简明、清晰、直观,功能实用,操作简单方便,上机培训量小。此外,系统还需有较快的响应速度,以尽量减少工作人员的等待时间。根据前台用户的需求,画出以下E-R图:实体类型 实体间联系 属性 图3.1 ER图的元素说明用户用户名密码权限地址订购数量总金额商品信息商品编号类型编号价格商品名称投诉投诉内容nmm属于m商品类型1类型编号类型名称发布1公告信息m用户编号公告内容货存用户编号图3.2 电子商城系统ER图将用户与商品信息表通过订购关系相联系,可以将此m:n二元联系转换为关系模型。关系模型为:用户(用户编号,密码,用户名,权限,地址);商品信息(商品编号,类型编号,商品名,价格,货存)订购(用户编号,商品编号,数量,总金额)将用户与商品信息表通过投诉关系相联系,可以将此m:n二元联系转换为关系模型。关系模型为:用户(用户编号,密码,用户名,权限,地址);商品信息(商品编号,类型编号,商品名,价格,货存)投诉(用户编号,商品编号,投诉内容)公告信息表用户编号公告标题公告内容用户编号发布时间内容图3.3 公告信息实体属性图用户投诉表投诉时间用户编号投诉内容商品编号投诉编号成功类别电子商务模块失败类别电子商务模块出错页面成功类别电子商务模块失败类别电子商务模块开始解决方案解决状态图3.4 投诉信息实体属性图通过以上的分析可知,该系统拥有用户、商品类别、商品、订单、投诉和公告的实体,其中实体对应数据库的表,属性对应表中的字段,关系对应表之间的联系。3.6 系统概要设计在软件需求分析阶段,搞清楚了软件“做什么”的问题。现在所要做的就是要把软件“做什么”的逻辑模型变换为“怎么做”的物理模型,即着手实现软件的需求。首先,需要描述的是系统的总的体系结构。3.6.1 系统结构设计 系统的概要设计中最重要的就是系统的模块化。模块化是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干个模块的过程。每个模块完成一个特定的功能。所有的模块按某种方法组织起来,成为一个整体,完成整个系统所要求的功能。 将系统划分为多个模块是为了降低软件系统的复杂性,提高可读性、可维护性,但模块的划分不能是任意的,应尽量保持其独立性。也就是说,每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少,而且接口简单,即尽量做到高内聚低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。在系统概要设计中采用结构化设计(Structure Design,简称SD),SD以需求分析阶段产生的数据流图DFD为基础,按照一定的步骤映射成软件结构。首先将整个系统划分为几个小问题、小模块。在本系统中,设计了浏览公告模块,浏览商品模块,购买商品模块,商品投诉模块,用户注册模块,公告管理模块,商品管理模块,订单管理模块,投诉管理模块,用户管理模块,网站计数器模块。3.6.2 功能模块规划及分析为了便于电子商城系统的设计开发,根据系统功能要求,使用了模块化设计,整个电子商城系统可以分为以下11个功能模块:浏览公告模块:此模块实现前台的公告信息浏览,无权限限制,注册用户和非注册用户都可以浏览公告。浏览商品模块:此模块实现前台的商品及商品信息浏览,无权限限制,注册用户和非注册用户都可以浏览商品,并查看所有商品信息。购买商品模块:此模块专门提供给注册用户以及其以上级别的用户使用,允许注册的用户通过在线付款形式购买商品,系统为注册用户提供购物车,并允许用户管理购物车,系统为通过验证的用户提供订单管理功能,并允许这些用户处理相应的订单。商品投诉模块:此模块专门提供给注册用户以及其以上级别的用户使用,允许购买此商品的用户对商品进行投诉,同时由管理员提出解决方案。用户注册模块:此模块包括会员的注册,相关资料的填写,以及用户的登陆,资料的修改。公告管理:此模块专门提供给管理员使用,系统管理员可以添加公告,系统管理员可以修改公告,系统管理员可以删除公告。商品管理模块:此模块中只有管理员才可以在线管理商品,即管理商品时需要验证管理员身份,不同级别的管理员只能管理相应的商品,如系统管理员可以管理系统中所有的商品,一般管理员只能管理自己上传的商品。订单管理模块:不同级别的管理员只能管理相应的订单,如系统管理员可以管理系统中所有商品的订单,一般管理员只能管理自己上传商品的订单。投诉管理模块:任何购买了商品的用户都可以发表对购买商品的投诉,只有管理员才可以删除已经回复的投诉,管理员可以处理投诉,也可以通过回复投诉来解决问题。用户管理模块:系统管理员可以添加,验证和查询用户,系统管理员可以修改系统中的任何用户信息,系统管理员可以删除任何用户。网站计数器模块:此模块是用来统计并显示网站访问总人数、本日访问人数和在线人数。在各个模块的设计中注重它们之间的相对独立性,减少它们之间的耦合,减轻模块化设计的难度。各模块的关系见图3.5系统功能模块图所示。电子商城系统前台购物后台管理浏览商品购买商品商品投诉用户注册公告管理商品管理订单管理投诉管理用户管理计数器浏览公告图3.5 系统功能模块图第四章 系统数据库的设计4.1 数据库的概念结构设计根据系统的需求分析和数据库的需求分析,同时根据相关部分的数据流程图,对系统数据库进行概念结构设计。根据数据关系模型和数据库关系模式的范式,我们创建了电子商城系统数据表,本系统共有9个数据表,分别是:用户信息表(users),商品类型表(GoodType),商品信息表(Goods),计数器信息表(webcount),订单信息表(Shop_list),公告信息表(Board),用户投诉表(Complain),论坛基本信息表(bbsconfig),论坛留言回复信息表(reforum)。4.1.1 建立数据库的原则 在建立数据库时,由于表中储存信息的不同,所以表中所需的字段也不一样,在确定所需字段时有以下五个原则:1.描述不同主题的字段应属于不同的表,通过定义之间的关系,可以将多个表中的字段进行数据组合,生成各种表单或报表;2.不要在表中储存通过推导或计算得到的数据;3.收集所需的全部信息。应全面检查书面的表单和报表,确定所需的数据都已包含在所设计的表中或可以由这些表计算出来;4.以最小的逻辑单位储存信息,应尽量把信息分解成比较小的逻辑单位;5.对于主关键字段,ACCESS不允许其有重复值或NULL值。4.1.2 建立字段的原则在实际选择和确定数据类型时,应结合字段的自身情况并考虑以下四点:1.该字段用于储存什么类型的值;2.要对字段中的值执行什么类型的运算;3.是否要用字段进行筛选或排序;4.是否用字段对记录进行分组。4.2 数据库逻辑结构设计数据库的概念结构设计完毕后,可以将数据库概念结构转化为某种数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。在电子商城系统中,共有9个数据表,分别是:用户信息表(users),商品类型表(GoodType),商品信息表(Goods),计数器信息表(webcount),订单信息表(Shop_list),公告信息表(Board),用户投诉表(Complain),论坛基本信息表(bbsconfig),论坛留言回复信息表(reforum)。用户信息表(users)信息见表4-1所示。表4-1 用户信息表字段名称数据类型字段大小默认值是否允许为空字段描述ID 主键自动编号4无否用户编号UserId 文本12无否用户名PWD文本12无否用户密码Sex是/否1无否性别Address文本100无否地址Email文本30无是邮箱Telephone文本20无否电话Allow数字1无否用户类别权限Usercheck是/否1无否用户是否通过验证创建该表时,需要创建一个系统管理员admin。本系统系统管理员的Allow字段为“1”,普通管理员为“2”,普通注册用户为“3”。Usercheck=0,未验证用户;=1,已验证用户。商品类型表(GoodsType)信息见表4-2所示。表4-2 商品类型表字段名称数据类型字段大小默认值是否允许为空字段描述ID 主键自动编号4无否商品类别序号Name文本20无否商品类别名称Type文本20无否商品类型商品信息表(Goods)信息见表4-3所示。表4-3 商品信息表字段名称数据类型字段大小默认值是否允许为空字段描述ShopID 主键自动编号4无否商品编号TypeID文本10无否类别序号UserID文本12无否用户名Name文本20无否商品名称Producer文本50无是生产商Package文本30无是包装型号Price数字8无否进货价格Saleprice数字8无否销售价格折扣数字4无是折扣Content文本200无是商品说明PostTime日期/时间8无是上传时间库存数字4无否商品库存数量ReadCount数字4无是商品被浏览次数BuyCount数字4无是商品被购买次数ImageFile文本30无是商品图片名称和路径GoodsCheck是/否1无否商品是否通过验证计数器信息表(webcount)信息见表4-4所示。表4-4 计数器信息表字段名称数据类型字段大小默认值是否允许为空字段描述count_id 主键自动编号4无否计数编号count_ip文本15无否客户IPcount_time日期/时间8Now()否访问时间计数器信息表包含了计数编号(count_id)、客户IP(count_ip)和浏览人访问时间(count_time),其中计数编号(count_id)为关键字,数据类型为自动编号,如此在添加数据时会自动加上一个单独的编号而不重复。浏览人访问时间(count_time)的默认值为 Now(),如此我们即能在添加数据时利用这个函数自动获取浏览人进入网站的时间,并自动存入数据表当中。订单信息表(Shop_list)信息见表4-5所示。表4-5 订单信息表字段名称数据类型字段大小默认值是否允许为空字段描述OrderSn 主键自动编号4无否订单号UserID文本12无否购买商品的用户编号ShopName文本20无否购买商品的名称 ShopID数字4无否商品编号Cost数字8无否商品单价Num数字4无否商品购买数量折扣数字4无否折扣TotalCost数字8无否购买商品总价OrderTime日期/时间8无否购买时间ShopCheck数字1无否订单处理类型YIFUKUAN数字8无否已付款金额ShopCheck=0,未处理订单;=1,已处理订单。公告信息表(Board)信息见表4-6所示。表4-6 公告信息表字段名称数据类型字段大小默认值是否允许为空字段描述ID 主键自动编号4无否公告编号Title文本20无否公告的标题Content文本200无否公告的内容PostTime时间/日期8无否发布公告时间UserID文本12无否发布公告的用户编号用户投诉表(Complain)信息见表4-7所示。表4-7 用户投诉表字段名称数据类型字段大小默认值是否允许为空字段描述ID 主键自动编号4无否投诉编号UserID文本12无否发布投诉的用户编号ShopID数字4无否用户投诉的商品编号PostTime时间/日期8无否发布投诉的时间Content文本200无否投诉内容Result文本200无否投诉所反映问题的解决方案Flag数字1无否投诉的解决状态Flag=0,表示未解决用户问题,Flag=1表示解决用户问题。论坛基本信息表(bbsconfig)见表4-8所示表4-8 论坛基本信息表字段名称数据类型字段大小默认值是否允许为空字段描述ID 主键自动编号4无否用户编号bbsname文本20无否论坛名称moderated文本12无否论坛版主info文本50无否论坛介绍pass数字1无否论坛访问权限hide数字1无是隐藏论坛lasttopic文本30无是最后发布主题lastname文本12无否最后发帖人的名称lasttime日期/时间8无否最后发帖人的时间论坛留言回复信息表(reforum)见表4-9所示表4-9 论坛留言回复信息表字段名称数据类型字段大小默认值是否允许为空字段描述ID 主键自动编号4无否留言编号topicid文本4无否主题序号userid文本12无否用户名content文本200无否回复内容posttime日期/时间8无否回复时间第五章 系统功能与模块的设计实现当对数据表的设计完成后,即要对系统功能和模块进行设计。在本次设计中,主要通过Dreamweaver,利用ASP中的Request(主要实现获取表单中的数据),Response(主要实现输出相关内容),Server(主要实现文件相关路径的设置以及建立Connection对象),Session(主要实现用户信息的存储以及购物车的实现)几大对象的属性和方法,以及SQL语句,IFelse语句来编写,完成系统功能和模块的设计以及界面的设计。数据库ACCESS和ASP通过ADO来实现链接,ADO使用内置的RecordSets对象作为数据的主要接口。利用SQL语句完成数据的查询,筛选,分组等功能。5.1 创建数据库打开ACCESS,通过菜单中的新建,然后选择新建空数据库,设置好数据库名。根据数据库的逻辑结构设计,选择使用设计器创建表来创建各个模块所需的数据表。5.2 在Dreamweaver中建立站点打开Dreamweaver ,在菜单栏中选择站点 管理站点 新建 站点 ,然后按屏幕提示操作,首先是给站点命名shop,然后按下一步,在服务器技术栏中选择 Asp vbscript ,再按下一步,把文件存储在计算机上的相应位置栏中,按下一步,在使用URL来浏览站点的根目录栏中填写“http:/localhost/”,单击下方的“测试URL(T)”,出现弹出窗口中显示“URL前缀测试已成功”,按下一步。建好站点后在Dreamweaver右下方的文件面板中将出现站点。5.3 系统模块的设计与实现5.3.1 系统的界面与导航条的设计电子商城系统给人的第一印象关键就在于界面,而可用性与易用性与导航条的设置有很大关系。本系统的界面风格包含在top.asp文件中,版权信息等包含在bottom.asp文件中,登录界面,搜索界面包含在left.asp中,商品分类,最新投诉,热卖商品,关注商品包含在right.asp中。各模块中的文件几乎都调用了top.asp和bottom.asp来统一界面风格,使得整个网站界面更加简洁、友好。top.asp如图5.1所示,导航条界面。系统主页面index.asp调用了top.asp, bottom.asp,left.asp,right.asp。图5.1 top.asp导航条界面5.3.2 数据库的连接主数据库,以及计数器采用以下代码连接Set Conn=Server.CreateObject(ADODB.Connection)Conn.ConnectionString=Provider=Microsoft.Jet.OLEDB.4.0;Data Source=& Server.MapPath(User.mdb)Conn.open其中,Server.CreateObject的功能是建立Connection对象,Server.Mappath的功能是找到数据库的路径。5.3.3 注册和登录模块用户在购物系统的主页上,单击“注册”连接,如图5.2,注册信息保存在user/UserReg.asp。图5.2 注册用户界面处理注册信息的文件为UserInsert.asp,实现流程如下。(1) 获取注册信息。获取注册信息主要利用Request对象的Form集合,获取表单中的用户名和密码,以及性别,联系电话,手机,主要实现代码如下:username=trim(Request.form(username),pwd=trim(Request.form(pwd) ,email=Request.form(email),tel=Request.form(telephone)(2) 检查注册信息是否完整。主要通过Ifelse语句检测表单中的数据是否为空。例如:If username= Then result=result&.用户姓名不能为空!,当用户名为空时,提示出错信息,以此类推,检测密码。检测邮箱格式代码为:n=Instr(email,”) 确认位置,没有该符号,说明邮箱格式有误。if n0 then m=instr(n,email,.) 如果有,去判断后是否有符号 .,不存在,则认为电子邮件域名错误。If m=len(email) then result=”email格式有误” End if 。(3) 检查是否存在该用户名.利用SQL语句:Set rs = Conn.Execute(Select * from Users where UserId= & uid & ) If Not rs.Eof Then 假如指针没有指向最后一个记录集,已经在表中的字段找到相同的ID,则弹出对话框“已经存在此用户名”alert(已经存在此用户名!);history.go(-1);(4) 添加新用户,利用SQL语句:sql=insert into Users(UserID,PWD,UserName,Sex,Address,Email,Telephone,Mobile,Allow) values(&_uid&,&pwd&,&username&,&Sex&,&address&,&email&,&_Request(telephone)&,&Request(mobile)&,&TypeUser&)5.3.4 用户管理中心模块用户登录后,网站主页的左侧显示用户管理中心界面,如图5.3图5.3 用户管理中心界面其中功能有更改资料,更改密码,客户投诉,我的投诉,管理界面,购物车,退出登录。1.更改信息界面该界面和用户注册界面相似,只不过界面的每个部分设置了用户信息。如图5.4图5.4 更改用户信息界面其中关键性代码为:sql = Select * From Users Where UserId=&userID & and PWD=&Session(Password)& 设置查询语句,为了保证安全需要密码和用户名都一致才可以修改。处理修改用户信息的文件为UserInsert.asp,实现流程如下:(1) 获取修改后的用户信息。(2) 检查用户信息是否完整,如果不完整,返回错误提示信息。(3) 修改数据库中用户信息。其中用了SQL的更新语句,以及用到了Request对象和Session对象。sql=Update Users Set UserName=&Request(username)&,Sex=&Sex&, &_ Address=&Request(address)&,Telephone=&Request(telephone)&,Mobile=&Request(mobile)&_ ,Email=&Request(email)&,Allow= &TypeUser& Where UserId=&uid & 用此时在表格中获取的数据去更新Users表中的相应字段,条件是只更新指定的UserId。Session(UserName) = Request(username)Session(Address)=Request(address)Session(Email)=Request(email) 用此时表单中获取的数据,去替代服务器中session此时保存的数据。2.更改密码界面单击“更改密码”链接,进入修改密码界面,如图5.5图5.5 更改用户密码界面修改用户密码需要用户输入原来的密码,并输入两次新密码。电子商城系统验证当前用户名和当前密码是否一致,代码如下:sql = Select * From Users Where UserId=&Session(userid)& and PWD=&Session(Password)& 设置验证用户密码和用户名是否一致。 Set rs = Conn.Execute(sql) 执行SQL语句。If rs.EOF Then 指针指向最后一个位置,仍未发现一致的字段,则不能修改。 Response.Write 你无权修改!文件ResetPwd.asp完成密码修改功能,实现流程如下。(1) 获取密码。UserId= request.queryString(userid) 获取用户名。oldpwd= trim(Request.form(oldpwd) 获取表单中输入的密码。(2) 检查输入密码newpwd=trim(Request.form(newpwd) 获取新密码。If newpwd= Then result=result&.用户密码不能为空! 新密码不能为空。confirmpwd=trim(Request.form(confirmpwd) 获取输入的确认密码。If confirmpwdnewpwd Then result=result&.两次输入的密码不同! 判断确认密码是否和输入的新密码相同。(3) 更新密码Conn.Execute(Update users set PWD=&newpwd& where UserId=&UserId&) 更新表users中的密码,条件是只更新获取的用户名。Session(userid) = UserId 把此时获得的用户名,去更新Session中保存的用户名。Session(Password) = newpwd 把此时获得的密码,去更新Session中保存的密码。3.购物车界面购物车即用户所选中,但尚未付款成交的商品。用户所选的商品保存在shop_list表中,User字段为保存购买商品的用户,check字段保存商品是否成交的信息。因此通过查询该表中User字段为当前用户,且字段Check0(0表示为未成交)的记录,即可获知用户所买的商品。购物车界面如图5.6:图5.6 购物车界面(1) 查询用户所选中的商品。这些商品保存在shop_list表中,并且ShopCheck字段的值为“0”。Sql=SELECT ID,User,ShopName,Cost,Num,TotalCost,折扣,Time,ShopCheck,OrderNumber FROM shop_list WHERE ShopCheck=0 and user= & Session(userid) & 列举需要显示的字段,查询用户所选中的商品。set rs=Conn.Execute(Sql) 执行SQL语句。(2) 判断是否存在所选商品。如果查询的结果为空,则该用户没有打算购买的商品。If rs.EOF Then 如果指针知道最后一个位置,仍然找不到符合要求的记录,则提示购物车内没任何商品Response.Write 购物车内没任何商品! & _产品类型(3) 显示表格的标题。购物车界面以字段名称为表格的标题。 For I = 0 To rs.Fields.Count 1 列举所有字段名称,字段的序号和名称保存在Fields字段中。 If rs.Fields(I).NameID Then 为安全起见,不显示ID字段 Response.Write & rs.Fields(I).Name & End If Next Response.Write 删除(4)显示购物车内商品信息的代码如下:For I = 0 To rs.Fields.Count 1 列举所有字段名称,字段的序号和名称保存在Fields字段中。If rs.Fields(I).Name=ShopCheck Then 字段名为shopcheck时。If rs.Fields(I).Value=1 Then 当shopcheck=1,订单已处理。 Data = Data & 订单已处理 ElseIf rs.Fields(I).Value=0 Then 当shopcheck=0时,订单正处理。 Data = Data & 订单正处理 End If ElseIf rs.Fields(I).NameID Then 为安全起见,不显示ID字段。 Data = Data & & rs.Fields(I).Value & End If Next Response.Write Data Response.Write 删除 链接delete.asp,传递ID字段信息。 Total = Total + rs(TotalCost)*0.8 总价打八折。开始用户登录购物车发送信息购物确认购物完成NY发送购买数量,总价格,及折扣等信息NN商品浏览购买商品在线支付YYNYY图5.7 浏览和购买商品模块程序流程图5.3.5 商品查询界面商品的简单查询依据商品类别和名称查询所有符合条件的商品。并为用户显示查询结果的详细信息和简略信息其界面如图5.8图5.8 简单查询界面显示的详细信息和简略信息分别如图5.9和图5.10图5.9 详细信息界面图5.10 简略信息界面简单查询界面设置在首页上,方便了用户的查询。该界面主要包含商品类型和商品名称。商品类别通过GoodsType表获取,实现代码如下:sql = Select * From GoodsType 设置查询商品类别信息的SQL语句。Set rs=Conn.Execute(Sql)If Not rs.Eof Then 判断是否存在商品,存在则把商品加入下拉列表框。Do While Not rs.Eof option value= 在下拉列表框中显示商品类型选项 。 简单查询功能主要由Search.asp实现,实现流程如下。(1) 获取查询条件。(2) 生成查询条件。typeid= Trim(Request(typeid) 获取商品类型编号。 If typeid= Then 如果商品类型编号为空,显示所有商品信息。 typeid=all End IfIf typeidall Then 如果商品类型不为所有类型,则查询指定商品序号。 SearchSql = SearchSql& and TypeId like & typeid&% End Ifgname = Trim(Request(name) 获取待查询商品名称。 If Not(isNull(gname) Or Len(gname)=0) Then 不为空,则在数据库中查询与输入字段相同的商品名称。 SearchSql = SearchSql & and Name Like % & gname & % End If(3) 执行查询。(4) 显示商品信息。Set rs= Conn.Execute(Sql) 显示页中所有记录。For i=1 to nPageSize 如果当前页为最后一页,该页显示的记录数目可能小于规定的记录数目,因此当当前记录为最后一条记录时要终止显示。If rs.EOF Then Exit ForIf i=1 Then nCurseStart=rs.Fields(ID)nCurseEnd=rs.Fields(ID) a href=GoodsView.asp?id= 元 5.3.6 信息统计电子
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 老旧电梯井道施工方案
- 四川大学《染整助剂化学》2023-2024学年第二学期期末试卷
- 惠州学院《微型计算机技术与应用》2023-2024学年第二学期期末试卷
- 武汉理工大学《文学写作》2023-2024学年第一学期期末试卷
- 2025年小学教室租赁合同
- 霍尼韦尔SM系统
- 2025至2031年中国卷式结束保护带行业投资前景及策略咨询研究报告
- pe管道拉管施工方案
- 2025至2031年中国二硫化硒洗液行业投资前景及策略咨询研究报告
- 2025至2030年中国钣金切割机数据监测研究报告
- 室速的观察及护理
- 餐饮公司绩效考核办法
- 新湘教版三年级美术下册教案
- 急救中心担架工考核管理办法
- 自考中国近代史押题及答案
- 四川2025年03月四川省攀枝花市仁和区事业单位春季引进15名人才笔试历年参考题库考点剖析附解题思路及答案详解
- 4月15日全民国家安全教育日主题宣传教育课件
- 中小学无人机基础知识
- 2025年安徽淮北市建投控股集团有限公司招聘笔试参考题库含答案解析
- 通风空调施工培训
- 2025年金华市轨道交通集团运营有限公司招聘笔试参考题库含答案解析
评论
0/150
提交评论