已阅读5页,还剩39页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Market网上商城购物系统毕业论文目录第一章 我国电子商务的现状和发展前景- 1 -第二章 系统需求分析- 5 -2.1 系统功能需求- 5 -2.2 系统设计思路- 6 -2.2.1 功能设计- 6 -2.2.2 结构设计- 7 -第三章 数据库设计- 9 -3.1 数据库各表关系图- 9 -3.2 部分表字段设计及注释- 9 -第四章 系统实现主要技术介绍- 12 -4.1 ASP.NET内置对象- 12 -4.2 ASP.NET自定义用户控件- 15 -4.3 ADO.NET- 16 -第五章 系统部分功能展示及其实现代码- 21 -5.1 部分界面展现- 21 -5.2 新用户注册和用户登陆- 23 -5.3 后台管理功能- 28 -5.4 随机产生验证码代码- 30 -5.5 数据访问核心类部分代码- 31 -第六章 总结- 35 -参考文献- 36 -附录- 37 -Market 商城购物网站第一章 我国电子商务的现状和发展前景电子商务作为现代服务业中的重要产业,有“朝阳产业、绿色产业”之称,具有“三高”、“三新”的特点。“三高”即高人力资本含量、高技术含量和高附加价值;“三新”是指新技术、新业态、新方式。人流、物流、资金流、信息流“四流合一”是对电子商务核心价值链的概括。电子商务产业具有市场全球化、交易连续化、成本低廉化、资源集约化等优势。电子商务按照参与主体和客户的不同,可分为多种形式,但目前看,B2B、B2C、C2C是主要形式,其中B2B是最主要的应用形式。按照贸易主导主体,可分为销售方控制型、购买方控制型和中立第三方控制型。(一)全球电子商务发展概况纵观全球电子商务市场,各地区发展并不平衡,呈现出美国、欧盟、亚洲“三足鼎立”的局面。美国是世界最早发展电子商务的国家,同时也是电子商务发展最为成熟的国家,一直引领全球电子商务的发展,是全球电子商务的成熟发达地区。欧盟电子商务的发展起步较美国晚,但发展速度快,成为全球电子商务较为领先的地区。亚洲作为电子商务发展的新秀,市场潜力较大,但是近年的发展速度和所占份额并不理想,是全球电子商务的持续发展地区。全球B2B电子商务交易一直占据主导地位,2002年至今,呈现持续高速增长态势,2007年全球B2B交易额达到8.3万亿美元,预计在未来几年将保持40%以上的增长率,到2010年B2B交易额将达到26万亿美元,比2002年增长30多倍。(二)我国电子商务发展概况1、我国电子商务的现状我国电子商务发展呈现典型的块状经济特征,东南沿海属于较为发达地区,北部和中部属于快速发展地区,西部则相对落后。自2005年以来,我国电子商务市场交易额稳定增长,2007 年我国电子商务市场规模突破17000亿元。未来3年,仍是我国电子商务投资规模持续增长和爆发的时期,我国电子商务投资市场将迎来新一轮的发展高潮。一方面,2007年国家“十一五”电子商务发展规划的颁布标志着政府推动电子商务的总体布局已经形成;另一方面,电子商务在企业的应用成效以及对经济、社会发展的推动作用日益明显。2007年我国B2B 电子商务交易额约为12500亿元,比2006年增长25.5%。目前B2B 市场的集中度较高,在综合类网站中,阿里巴巴已占近乎7成份额。2007年我国B2C网站总收入约为52.2亿元,同比增长33.5%。B2C是传统企业开展电子商务的主要形式,随着网络购物环境的好转以及企业(特别是大中型企业)电子商务化程度的提升,在总体规模上B2C 将会有一个长足的发展,并成为未来网购的主流。2007年我国C2C交易额约为410.4亿元,同比增长90%;C2C是目前我国网购的主要形式,但普及率还较低,不到网民总数的3成。2、我国电子商务发展趋势(1)电子商务的发展环境将不断完善,发展动力持续增强随着市场经济体制进一步完善,推进经济增长方式转变和结构调整的力度继续加大,发展电子商务的需求将会更加强劲。电子商务将被广泛应用于生产、流通、消费等各领域和社会生活的各个层面。这将促使全社会电子商务的应用意识不断增强,有关电子商务的政策、法律、法规将不断出台,电子商务发展的政策法律环境将不断完善。同时,也促使物流、信用、电子支付等电子商务支撑体系建设更全面的展开,从而使得电子商务发展的内在动力持续增强。(2)电子商务应用将达到新的广度和深度随着电子商务发展“十一五”规划的实施,电子商务在国民经济各部门中将得到进一步的推广和应用。电子商务交易额呈现稳定持续增长态势;在区域发展方面,长三角、珠三角和环渤海等东南沿海的电子商务在继续高速增长的同时,辐射力也逐渐提高,将促进东部和中西部地区之间的协调发展;在企业应用方面,在国家、各级政府的政策引导下,在电子商务服务业的协助下,将促进企业由非支付型电子商务向支付型电子商务发展、协同电子商务的发展,深化企业应用水平。(3)电子商务与产业发展深度融合不断加大,加速形成经济竞争新态势在综合性电子商务网站已经占据综合类B2B领域绝大部分市场的情况下,越来越多的行业电子商务网站已经在综合网站市场之外寻求专业化细分领域的发展。电子商务正在与传统产业进行深入的融合,两者相互促进,协调发展。(4)电子商务服务业蓬勃发展,逐步成为国民经济新的增长点随着企业供应链电子商务、国际电子商务的发展,将带动电子商务服务业的发展,围绕电子商务服务形成的从低端技术环节到中端支撑环节再到高端应用环节的电子商务服务链在我国结点饱满,一个全新视角的电子商务服务业群正在形成,将成为未来国民经济新的增长点。(5)移动电子商务正成为电子商务新的应用领域2006年以来,移动通讯商,密切关注移动商务企业市场,中国移动和银联联手推出的“手机钱包”,完成移动电子商务付费的个性化服务。基于移动支付的支持,移动电子商务正成为电子商务新的应用领域。第二章 系统需求分析2.1 系统功能需求21世纪以来,人类经济高速发展,人们生活发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。使原本的旧的管理方式越来越不适应现在社会的发展。许多人还停留在以前的逛街去买需要的用品,网上商城为大家带来了极大地方便。我所开发的market网上商城购物系统基本上实现了在线购物的需求,采用Microsoft Visual Studio 2010作为开发平台,使用SQLServer2005作为后台数据库。本网上书店在线销售系统是基于B/S架构,本网站系统的开发主要是方便用户足部出户就可以购买商品,减少供应商店面费用。本系统共有三类用户:访客:指没有登陆权限(主要指网络用户),以匿名用户的身份访问系统网站。此类用户主要有浏览系统信息、查看商品信息,注册成为会员。把本网站设为首页,添加到收藏夹,联系管理员等操作。浏览的内容包括:商品信息、商品分类信息。会员:这类用户拥有游客的所有权限;会员可以注册成为会员,并根据会员ID和密码登陆系统,登陆之后可以对更改自己的信息但会员ID做为数据库表主键不能修改。会员登陆后可以查看商品信息,查看各种分类商品信息,将商品添加到购物车中,修改购物车中商品数量,或是删除某些不想要的商品。系统管理员:系统管理员主要负责管理着系统后台信息;主要有订单管理,商品管理,会员管理,物流管理和系统管理。订单管理有未确认订单和已确认订单管理,未付款订单。商品管理主要有商品添加和商品管理,商品类别添加和商品类别管理。会员管理主要有添加管理员和管理管理员,管理会员。物流系统主要有支付方式添加和管理,配送方式添加和管理,配送地点添加和管理。系统管理主要是上传管理。因此,本系统主要功能是对商品进行管理规划,方便会员购买。2.2 系统设计思路2.2.1 功能设计商城前台:功能强大,操作方便。前台作为与用户直接交互的界面,在考虑功能的同时,也考虑了操作的简洁和方便,目的是让大多数不懂电脑操作的客户也能轻松地享受网上购物带来的极大方便。主要包括以下几个模块: 商品信息和类别展示 用户注册和登录 已登录用户信息修改 购物车管理 网站活动信息 书店后台:本系统后台在考虑书店管理操作简便的同时,提供了强大的书店管理模式。主要包括以下几个模块: 订单管理 商品管理 用户管理 物流管理 系统管理2.2.2 结构设计 参与者汇总游 者:查看商品信息和注册成为会员。会 员:查看商品信息和购买商品,修改个人信息等。管理员:管理商品信息,管理用户信息等。 前台流程:用户登录用户登陆用户注册用户登录查看图书信息添加图书到购物车支付 后台流程:管理员登录订单管理、图书管理、用户管理、图片管理退出网上购物系统为顾客提供一个类似于超级市场的网络界面。通过网络界面,用户登录后执行各种操作,没有注册的用户可以查找商品信息,查看首页面的最受欢迎商品等信息。结构设计简述:开始我本想用三层结构搭建网站,但是在进一步考虑之后发现系统的逻辑比较简单,并不一定要将业务逻辑单独分离出来。于是将三层合并为两层开发,即界面层和业务逻辑层合二为一,将界面层和业务逻辑层归为一层,业务逻辑的处理放在页面的后台代码中,这样做的好处之一是简化开发过程,之二是加快数据访问速度。当然这样做也带来了一些不便,首先是开发层次不如三层那样清楚,界面数据和业务逻辑混杂,然后是给网站的后期维护以及修改带来一定的不便,不如三层结构修改起来容易。由于作者在毕业设计期间还在专心准备专升本的课程学习,加上时间比较紧促,权衡利弊,选择将三层合并为两层开发。第三章 数据库设计3.1 数据库各表关系图图3-13.2 部分表字段设计及注释表3-1tb_GoodsInfo字段名数据类型长度主外键字段说明备注GoodsIDBigint主键商品标识非空ClassIDBigint外键商品类型标识非空GoodsNameVarchar50无商品名称可空GoodsIntroduceNtext无商品介绍可空GoodsBrandVarchar50无品牌可空GoodsUnitVarchar10无单位可空GoodsWeightFloat无重量可空GoodsUrlVarchar50无图片链接可空MarketPriceFloat无单价可空MemberPriceFloat无会员价可空IsrefinementBit无是否精品可空IsHotBit无是否热销可空AddDateDatetime无添加日期可空IsDiscountBit无是否打折可空商品信息表:在添加商品和在前台显示商品详细信息时用到该表,实现了商品的添加和显示详细信息的功能。表3-2tb_Class字段名数据名长度主外键字段说明备注ClassIDBigint主键类型标识非空ClassNameVarchar50无类型名称可空CategoryUrlVarchar50无图片链接可空商品类型表:主要用于在添加商品类别的时候用到该表,把添加的商品类型存储到该表中,完成商品类型的添加和调用功能。表3-3 tb_OrderInfo字段名数据名长度主外键字段说明备注OrderIDBigint主键订单标识非空OrderDateDatetime无订单日期可空GoodsFeeFloat无货品总额可空TotalPriceFloat无总金额可空ShipFeeFloat无运费可空ShipTypeInt无运送类型标识可空PayTypeInt无支付类型可空MemberIDInt外键会员标识可空ReceiverNameVarchar(50)无收货人姓名可空ReceverPhoneVarchar(50)无收货人电话可空IsConfirmBit无是否确认可空IsPaymentBit无是否付款可空IsConsignmentBit无是否发货 可空IsPigeonholeBit无是否归档可空ReceiverPostCodeChar10无邮编可空ReceiverAddressVarchar200无地址可空ReceiverEmailsVarchar50无邮箱可空订单信息表:主要在管理订单的时候用到该表完成订单的管理功能。表3-4 tb_Member字段名数据名长度主外键字段说明备注MemberIDBigint主键会员标识非空NameVarchar50无用户名可空SexBit无性别可空PassWordVarchar50无密码可空TrueNameVarcahr50无真实姓名可空QuestionsNavarchar50无验证问题可空AnswersNavarchar50无答案可空PhonecodeVarchar20无电话号码可空EmailsVarchar50无邮箱可空CityVarchar50无所在城市可空AddressVarchar200无地址可空PostCodeChar10无邮编可空AdvancePaymentFloat无消费可空LoadDateDatetime无登陆日期可空会员信息表:该表存储了注册的会员信息,在会员登录和合结账的时候会调用到该表。表3-5tb_Admin字段名数据名长度主外键字段说明备注AdminIDBigint主键管理员标识非空AdminVarchar50无用户名可空PassWordVarchar50无 密码可空管理员信息表:主要用于后台管理员登录的时候调用该表完成管理员的登录功能。第四章 系统实现主要技术介绍4.1 ASP.NET内置对象下面是ASP.NET中常用对象的介绍及用法(1) Request 对象:将用户端输入的数据传递给服务器。(2) Response 对象:向客户端输出数据。Response 和Request 可以说是一对孪生兄弟,一个负责收集,另一个负责输出。(3) Application 对象:可以供全体应用程序使用。使用Application 对象不仅可以在给定的应用程序的所有用户之间共享,而且可以在服务器运行期间持久地保存数据。(4) Session 对象:供特定用户会话使用。Session 对象与Application 对象的作用相近,使用Session 对象可以存储特定的用户会话所需的信息。Application 与Session 的区别在于,网上的用户都可以使用Application 的对象,而Session 只是针对一个特定的客户而已。(5) Server 对象:提供对服务器上的方法和属性的访问,其中大多数方法和属性是作为实用程序的功能服务的。最常用的方法是创建ActiveX 组件的实例(Server.CreateObject)。其他方法用于将URL 或HTML 编码成字符串,将虚拟路径映射到物理路径以及设置脚本的超时期限。QueryString 集合QueryString 可以获取标识在URL 后面的所有返回变量及其值。在搜索引擎里面经常用这种方法。例如,当用户端送出如下请求时,QueryString 将会得到name 和age 两个变量的值。在上面的例子中,href=queryString.asp指出了链接的地址,“?”后面有两个变量name 和age,用&把它们连接起来,它们的值分别是wuerlang 和36。Request 对象数据集合集合(collection)指的是一群放在一起的值(Value),例如当浏览者输入网页窗体数据并单击【提交】按钮之后,窗体字段的名称与浏览者输入的数据就会以一个Form 形式的集合传给 Web 服务器。例如在ASP 对象的QueryString 集合中,若要取得username 字段或userage 字段的值,可以分别写成Request.QueryString(username)和Request.QueryString(userage) 。若是在Form 集合中, 则可以写成Request.form(username) 和Request.form(userage)。Request 对象提供了5个集合:Form、QueryString、Cookies、ServerVariables 和ClientCertificate。Request 对象把客户信息保存在几个集合中,供ASP 使用,当不指定集合名时,以QueryString、Form、Cookie、ClientCertificate、ServerVariable 的顺序搜索所有集合,当发现第一个匹配的变量时,就认定它是要引用的成员。当然,为了提高效率,最好指定是哪个集合中的成员。2. Response.Redirect 方法Redirect 方法使浏览器立即重定向到程序指定的URL。这也是一种经常用到的方法,这样程序员就可以根据客户的不同响应,为不同的客户指定不同的页面或根据不同的情况指定不同的页面。一旦使用了Redirect 方法,任何在页中显式设置的响应正文内容都将被忽略。然而,此方法不向客户端发送该页设置的其他HTTP 标题,将产生一个将重定向URL作为链接包含的自动响应正文,其语法格式如下:Response.Redirect URLSession对象可以使用 Session 对象存储特定的用户会话所需的信息。当用户在应用程序的页之间跳转时,存储在Session 对象中的变量不会清除,而用户在应用程序中访问页面时,这些变量始终存在。当用户请求来自应用程序的Web 页时,如果该用户还没有会话,则Web 服务器将自动创建一个Session 对象。当会话过期或被放弃后,服务器将终止该会话。通过向客户程序发送唯一的Cookie 可以管理服务器上的Session 对象。当用户第一次请求ASP应用程序中的某个页面时,ASP 要检查HTTP头信息,查看在报文中是否有名为ASPSESSIONID的Cookie 发送过来,如果没有,则服务器会启动新的会话,并为该会话生成一个全局唯一的值,再把这个值作为新ASPSESSIONID Cookie 的值发送给客户端。正是使用这种Cookie,可以访问存储在服务器上的属于客户程序的信息。Session 对象最常见的作用就是存储用户的首选项。例如,如果用户指明不喜欢查看图形,就可以将该信息存储在Session 对象中。另外还经常被用在鉴别客户身份的程序中。要注意的是,会话状态仅在支持Cookie 的浏览器中保留,如果客户关闭了Cookie 选项,Session也就不能发挥作用了。Session对象的主要用途是保存信息,当用户登录网站时,系统为其分配一个Session,只有当用户退出时,或者Session 生命周期结束时,信息才会清除。4.2 ASP.NET自定义用户控件就其核心而言,ASP.NET是一种以如下方式定义的基于控件的构架:页是控件任何控件都可以包含子控件呈现控件时,先呈现本身的内容,然后反复呈现子控件的内容这种构架类似于Win32API中的窗口构架。桌面本身是一个窗口(好像Page),而且任何窗口都可以包含子窗口。呈现每个窗口时,首先呈现本身的内容,然后呈现子窗口的内容。在桌面上,窗口的呈现涉及在显示器上绘制像素,ASP.NET控件的呈现设计生成HTML,以填入HTTP请求的部分相应。ASP.NET的控件构架是一种完全可扩展的框架,本章讨论用于构建自定义控件的技术,创建真正可重用的Web组件(封装了表示和服务器交互的细节)。中提供的增加内嵌服务器控件的功能,使你能够多次的轻松增加你所定义的各种控件。事实上,对于表单等各种控件,可以不用更改或者稍微更改一下就可以多次使用的。在通常情况下,我们把一个用作服务器控件的web表单统称为用户控件,我们用一个.ascx为后缀的文件保存起来,这样的保存使得它不被当作一个web表单来运行,当我们在一个.aspx文件中使用它时,我们用Register方法来进行调用,假设我们有一个文件名为saidy.ascx的文件,我们用下面的语句来调用它: 上面的TagPrefix标记为用户控件确定个唯一的名字空间,TagName为用户控件确定一个唯一的名称,你也可以用其它的名字代替“Message“,Src为确定所包含的文件名称和路径。这样,我们就可以用下面的语句来调用它了:4.3 ADO.NETADO.NET的名称起源于ADO(ActiveX Data Objects),这是一个广泛的类组,用于在以往的Microsoft技术中访问数据.之所以使用ADO.NET名称,是因为Microsoft希望表明,这是在.NET编程环境中优先使用的数据访问接口。它提供了平台互用性和可伸缩的数据访问。ADO.NET增强了对非连接编程模式的支持,并支持RICH XML。由于传送的数据都是XML格式的,因此任何能够读取XML格式的应用程序都可以进行数据处理。事实上,接受数据的组件不一定要是ADO .NET组件,它可以是基于一个Microsoft Visual Studio的解决方案,也可以是任何运行在其它平台上的任何应用程序。 ADO.NET是一组用于和数据源进行交互的面向对象类库。通常情况下,数据源是数据库,但它同样也能够是文本文件、Excel表格或者XML文件。 ADO.NET允许和不同类型的数据源以及数据库进行交互。然而并没有与此相关的一系列类来完成这样的工作。因为不同的数据源采用不同的协议,所以对于不同的数据源必须采用相应的协议。一些老式的数据源使用ODBC协议,许多新的数据源使用OleDb协议,并且现在还不断出现更多的数据源,这些数据源都可以通过.NET的ADO.NET类库来进行连接。 ADO.NET提供与数据源进行交互的相关的公共方法,但是对于不同的数据源采用一组不同的类库。这些类库称为Data Providers,并且通常是以与之交互的协议和数据源的类型来命名的。ADO.NET包含的类1、Connection 类和数据库交互,你必须连接它。连接帮助指明数据库服务器、数据库名字、用户名、密码,和连接数据库所需要的其它参数。Connection对象会被Command对象使用,这样就能够知道是在哪个数据源上面执行命令。 与数据库交互的过程意味着你必须指明想要执行的操作。这是依靠Command对象执行的。你使用Command对象来发送SQL语句给数据库。Command对象使用Connection对象来指出与哪个数据源进行连接。你能够单独使用Command对象来直接执行命令,或者将一个Command对象的引用传递给DataAdapter,它保存了一组能够操作下面描述的一组数据的命令。 2、Command对象成功于数据建立连接后,就可以用Command对象来执行查询、修改、插入、删除等命令; Command对象常用的方法有ExecuteReader方法、ExecuteScalar()方法和ExecuteNonQuery()方法;插入数据可用ExecuteNonQuery()方法来执行插入命令。 3、DataReader类许多数据操作要求你只是读取一串数据。DataReader对象允许你获得从Command对象的SELECT语句得到的结果。考虑性能的因素,从DataReader返回的数据都是快速的且只是“向前”的数据流。这意味着你只能按照一定的顺序从数据流中取出数据。这对于速度来说是有好处的,但是如果你需要操作数据,更好的办法是使用DataSet。 4、DataSet对象DataSet对象是数据在内存中的表示形式。它包括多个DataTable对象,而DataTable包含列和行,就象一个普通的数据库中的表。你甚至能够定义表之间的关系来创建主从关系(parent-child relationships)。DataSet是在特定的场景下使用帮助管理内存中的数据并支持对数据的断开操作的。DataSet是被所有Data Providers使用的对象,因此它并不像Data Provider一样需要特别的前缀。 5、DataAdapter类某些时候你使用的数据主要是只读的,并且你很少需要将其改变至底层的数据源。同样一些情况要求在内存中缓存数据,以此来减少并不改变的数据被数据库调用的次数。DataAdapter通过断开模型来帮助你方便的完成对以上情况的处理。当在一单批次的对数据库的读写操作的持续的改变返回至数据库的时候,DataAdapter 填充(fill)DataSet对象。DataAadapter包含对连接对象以及当对数据库进行读取或者写入的时候自动的打开或者关闭连接的引用。另外,DataAdapter包含对数据的SELECT、INSERT、UPDATE和DELETE操作的Command对象引用。你将为DataSet中的每一个Table都定义DataAadapter,它将为你照顾所有与数据库的连接。所有你将做的工作是告诉DataAdapter什么时候装载或者写入到数据库。 6、DataTable类DataTable 是一个数据网格控件。它可以被应用在 VB 和 ASP 上。它无须代码就可以简单的绑定数据库。它具有微软风格的用户界面。7、ADO.NET是与数据源交互的.NET技术。有许多的Data Providers,它将允许与不同的数据源交流取决于它们所使用的协议或者数据库。然而无论使用什么样的Data Provider,你将使用相似的对象与数据源进行交互。SqlConnection对象管理与数据源的连接。SqlCommand对象允许你与数据源交流并发送命令给它。为了对进行快速的只“向前”地读取数据,使用SqlDataReader。如果想使用断开数据,使用DataSet并实现能进行读取或者写入数据源的SqlDataAdapter。第五章 系统部分功能展示及其实现代码5.1 部分界面展现(1)前台主界面图5-1(2)购物车图5-2(3)后台首页图5-3(4)订单管理图5-4(5)物流管理图5-5(6)普通会员管理图5-6(7)管理员管理图5-75.2 新用户注册和用户登陆(1)前台登陆图5-8这里的登陆界面是用自定义用户控件实现的,其后台代码如下:登陆按钮事件:protected void btnLoad_Click(object sender, EventArgs e) SessionUID = null ; SessionUsername = null ; if (txtName.Text.Trim() = | txtPassword.Text.Trim () = ) Response.Write(alert(登录名和密码不能为空!);location=javascript:history.go(-1);); else if (txtValid.Text.Trim() = lbValid.Text.Trim() int P_Int_IsExists = uiObj.UserExists(txtName.Text.Trim(), txtPassword.Text.Trim(); if (P_Int_IsExists = 100) DataSet ds = uiObj.ReturnUIDs(txtName.Text.Trim(), txtPassword.Text.Trim(), UserInfo); SessionUID = Convert.ToInt32(ds.TablesUserInfo.Rows00.ToString(); SessionUsername = ds.TablesUserInfo.Rows01.ToString(); Response.Redirect(index.aspx); else Response.Write(alert(您的登录有误,请核对后再重新登录!);location=javascript:history.go(-1);); else Response.Write(alert(请正确输入验证码!);location=javascript:history.go(-1);); (2)会员注册图5-9保存按钮代码:protected void btnSave_Click(object sender, EventArgs e) if (txtPostCode.Text.Trim() = & txtPassword.Text.Trim()=) Response.Write(alert(请输入完整信息!);location=javascript:history.go(-1);); else bool P_Bl_Sex; if(Convert.ToInt32(ddlSex.SelectedItem.Value.Trim()=1) P_Bl_Sex =true ; else P_Bl_Sex =false ; G_Int_MemberID = uiObj.AddUInfo(txtName.Text.Trim(), P_Bl_Sex, txtPassword.Text.Trim(), txtTrueName.Text.Trim(), , , txtPhone.Text.Trim(), txtEmail.Text.Trim(), ddlCity.SelectedItem.Text.Trim(), txtAddress.Text.Trim(), txtPostCode.Text.Trim(); SessionUsername = ; SessionUsername =txtName.Text.Trim(); Response.Write(alert(恭喜您,注册成功!);location=index.aspx); 后台登陆界面:图5-10登陆按钮代码:protected void btnLogin_Click(object sender, EventArgs e) if (txtAdminName.Text.Trim() = | txtAdminPwd.Text.Trim() = ) Response.Write(alert(登录名和密码不能为空!);location=javascript:history.go(-1);); else if (txtAdminCode.Text.Trim() = labCode.Text.Trim() int P_Int_IsExists = mcObj.AExists(txtAdminName.Text.Trim(), txtAdminPwd.Text.Trim(); if (P_Int_IsExists = 100) DataSet ds = mcObj.ReturnAIDs(txtAdminName.Text.Trim(), txtAdminPwd.Text.Trim(), AInfo); SessionAID = Convert.ToInt32(ds.TablesAInfo.Rows00.ToString(); SessionAname = ds.TablesAInfo.Rows01.ToString(); /Response.Write(window.open(AdminIndex.aspx);window.close();); Response.Redirect(AdminIndex.aspx); Response.Write(window.close();); else Response.Write(alert(您输入的用户名或密码错误,请重新输入!);location=javascript:history.go(-1);); else Response.Write(alert(验证码输入有误,请重新输入!);location=javascript:history.go(-1);); 5.3 后台管理功能以商品管理为例,会员管理,物流管理代码都与其类似,下面不再赘述:图5-11添加商品图5-12保存按钮事件:protected void btnSave_Click(object sender, EventArgs e) if (txtName.Text = | txtBrand.Text = | txtUnit.Text = | txtWeight.Text = | txtMemberPrice.Text = | txtMarketPrice.Text = ) Response.Write(alert(请输入必要的信息); else bool Isrefinement ; bool IsHot; bool IsDisCount; if(cbxCommend.Checked =true) Isrefinement =true ; else Isrefinement =false ; if(cbxHot.Checked=true) IsHot=true; else IsHot =false ; if(cbxDiscount.Checked =true) IsDisCount=true ; else IsDisCount =false ; int P_Int_returnValue = mcObj.AddGInfo(Convert.ToInt32(ddlCategory.SelectedItem.Value.ToString(), txtName.Text.Trim(), txtShortDesc.Text.Trim(), txtBrand.Text.Trim(), txtUnit.Text.Trim(), float.Parse (txtWeight.Text.Trim(), ddlUrl.SelectedItem.Value.Trim(), flo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论