网上商城购物系统毕业论文

网上商城购物系统毕业论文

ID:1430394

大小:597.50 KB

页数:44页

时间:2017-11-11

上传者:U-1035
网上商城购物系统毕业论文_第1页
网上商城购物系统毕业论文_第2页
网上商城购物系统毕业论文_第3页
网上商城购物系统毕业论文_第4页
网上商城购物系统毕业论文_第5页
资源描述:

《网上商城购物系统毕业论文》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

网上商城购物系统毕业论文目录前言V第1章绪论1§1.1开发背景1§1.2网上商城购物系统描述1§1.3开发运行环境1§1.3.1硬件需求1§1.3.2软件需求1第2章系统概要设计3§2.1后台系统目标3§2.2后台系统分析3§2.2.1后台系统功能结构图如图所示:3§2.2.2后台系统预览4§2.2.3后台系统设计流程图:8§2.3开发工具选择8§2.3.1MicrosoftVisualC#/Asp.net介绍9§2.3.2MicrosoftAccess数据库工具介绍10第3章子系统详细设计与实现11§3.1C#后台连接数据库详细步骤11§3.2后台主窗体设计12§3.3后台登陆窗口设计14III §3.4会员客户管理信息模块17§3.4.1会员修改删除模块17§3.4.2会员客户留言模块20§3.5商品管理信息模块22§3.5.1商品栏目管理22§3.5.2商品信息管理24§3.5.3添加商品信息24§3.6物流订单信息模块27§3.6.1物流管理模块27§3.6.2订单管理模块29§3.7系统管理员信息模块31§3.7.1管理员修改、删除、添加模块31§3.8系统信息管理模块31§3.8.1最新通知管理模块32结论34参考文献35致谢36附录37III 前言网上商城是为了精简商业活动中场所所带来的成本以及地理位置所带来的商业活动不便所开发的,依托互联网来进行商业活动的平台。它提供一套基于互联网的商品采购与交易模式,打破商城和用户之间由于场所限制带来的购物不便,同时,它能够降低商场场地所带来的成本,将更大的实惠反馈给购买者。从而为购买者和商家开辟一条共赢的道路。本设计的最终目标是建立一个基于互联网的平台,它能够分别为商品的购买者和商场提供不同的服务。其中,商品购买者能够通过此平台来进行商品浏览、选购;商场可以通过此平台来进行订单处理和库存处理。本设计共3章,各章节的主要内容如下:第1章主要介绍了网上商城购物系统的开发背景、系统描述以及运行环境。第2章介绍的是后台系统目标、后台系统分析及开发工具(MicrosoftVisualC#/Asp.net、MicrosoftAccess)的选择。第3章讲述的是子系统详细的设计与实现,分别介绍了C#后台连接数据库详细步骤、后台主窗体设计、后台登陆窗口设计、会员客户管理信息模块(会员修改删除模块、会员客户留言模块)、商品管理信息模块(商品栏目管理、商品信息管理、添加商品信息)、物流订单信息模块(物流管理模块、订单管理模块)、系统管理员信息模块(管理员修改、删除、添加模块)及系统信息管理模块(最新通知管理模块)。由于编写时间有限,文中难免有不足之处,敬请各位读者批评指正。III 三门峡职业技术学院毕业设计(论文)第1章绪论1.1开发背景本着计算机技术在各行各业日益广泛和深入的应用,网络的概念早已深入人心。网络在各行各业的发展战略中占据了重要的位置,成为商家不可分割的部分。商品的宣传已不只局限于电视与报纸,网络已成为商家展示自己的另一个舞台。商家建立网站,将商家各方面的宣传与服务展现于网络中,通过网络更可实现如网上购物、信息查寻等功能,这些在改变我们原有经营方式与经营理念的同时,也为商家带来了更高的效益。因此,对于商家来说,拥有一个属于自己的网站是至关重要的。“网上商城”实际上是运行在Web服务器中的一个Web运用程序。“网上商店”模拟一般的商店的经营模式。利用页面、脚本程序来实现“网上商城”的进货管理、销售管理、库存管理。互联网技术提供的不仅仅只是供需双方间的较低的交易成本,还有较低的选择费用和更多可供选择的商品。这些特点促使商家更多地通过使用网站来实现电子商务。1.2网上商城购物系统描述网上购物系统,是在网络上建立一个虚拟的购物商场,避免了挑选商品的烦琐过程,使您的购物过程变得轻松、快捷、方便,很适合现代人快节奏的生活;同时又能有效的控制“商场”运营的成本,开辟了一个新的销售渠道。本系统是一个中小型的电子商务系统,可以为各类用户提供方便的在线购物环境,符合目前国内流行的电子商务模式。用户可以再系统中实现注册、登录、修改个人信息、分类查询商品信息、购物、管理购物车、结账和查看各种服务条款等功能。通过后台管理模块可以实现后台管理员对会员、商品、物流、订单和系统管理功能。1.3开发运行环境1.3.1硬件需求1.Cpu:1.5G以上的处理器2.内存:512GB,推荐1GB。3.硬盘:500MB以上剩余空间。1.3.2软件需求1.操作系统:WindowsXP2.数据库工具:MicrosoftAccess41 三门峡职业技术学院毕业设计(论文)3.开发工具:MicrosoftVisualStudio200541 三门峡职业技术学院毕业设计(论文)第2章系统概要设计2.1后台系统目标1.系统管理内容较多,需要完备的管理设置。2.添加大量商品栏目分类,商品信息、订单等内容管理。3.注册会员管理,系统管理员管理。4.最新商品通知管理。5.对基本信息、各种商品信息,会员的删除。6.广告,友情链接、导航目标等管理2.2后台系统分析2.2.1后台系统功能结构图如图所示:网上商城购物系统之后台主要功能模块对系统管理员的管理对会员管理对商品订单管理对管理员的修改删除对管理员的添加对会员的修改删除对会员的添加管理对商品添加删除修改对商品添加分类修改对商品订单的管理41 三门峡职业技术学院毕业设计(论文)图2-1后台系统功能模块图2.2.2后台系统预览后台管理系统由多个模块组成,包括商品管理、后台登陆、订单管理、注册会员以及系统管理员的管理等等,下面简单给出该系统的几个简单模块。首先是后台登陆管理模块:图2-2登录模块下面是后台系统主窗口的管理模块图:图2-3主窗口商品管理相关图:41 三门峡职业技术学院毕业设计(论文)图2-4商品栏目管理图2-5系统商品数据库前台管理图图2-6添加商品管理41 三门峡职业技术学院毕业设计(论文)系统其他相关信息图:图2-7最新系统通知管理图2-8添加通知管理图2-9系统留言管理41 三门峡职业技术学院毕业设计(论文)物流订单管理:图2-10物流订单管理图2-11物流管理注册会员、系统管理员管理:41 三门峡职业技术学院毕业设计(论文)图2-12注册会员、管理员的管理2.2.3后台系统设计流程图:管理员登陆后台管理系统对商品、系统信息的管理对会员的管理对系统管理员的管理商品添加删除修改管理商品订单管理系统相关信息管理对会员删除修改管理对管理员添加删除等图2-13后台系统设计流程图2.3开发工具选择本系统的开发主要是用MicrosoftVisualstudio2005的开发环境,利用MicrosoftAccess进行数据库的设计,以微软开发的IIS作为服务器运行。下面对它们分别进行简单的介绍。41 三门峡职业技术学院毕业设计(论文)2.3.1MicrosoftVisualC#/Asp.net介绍1.MicrosoftVisualC#采用的是微软最新的开发工具MicrosoftVisualstudio2005环境进行开发。C#是微软公司发布的一种面向对象的、运行于.NETFRAMEWORK之上的高级程序设计语言并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员AndersHejlsberg的最新成果。C#看起来与JAVA有着惊人的相似;它包括了诸如单一继承、借口、与JAVA几乎同样的语法和变异成中间代码再运行的过程。但是C#与JAVA有着明显的不同,它借鉴了DELPHI的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NETWINDOWS网络框架的主角。2.C#(读做"Csharp",中文译音暂时没有.专业人士一般读"Csharp",现在很多非专业一般读"C井"。C#是一种安全的、稳定的、简单的、优雅的,由C和C++衍生出来的面向对象的编程语言。它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏和模版,不允许多重继承)。C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。并且C#成为ECMA与ISO标准规范。C#看似基于C++写成,但又融入其它语言如Delphi、Java、VB等。3.ASP是一项微软公司的技术,是一种使嵌入网页中的脚本可由因特网服务器执行的服务器端脚本技术。指ActiveServerPages(动态服务器页面),运行于IIS之中的程序。ASP.net是把基于通用语言的程序在服务器上运行。不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的解释强很多。4.IIS指InternetInformationServices(因特网信息服务)ASP.net不仅仅是ActiveServerPage(ASP)的下一个版本,而且是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。ASP.net提供许多比现在的Web开发模式强大的优势。41 三门峡职业技术学院毕业设计(论文)2.3.2MicrosoftAccess数据库工具介绍1.MicrosoftOfficeAccess(前名MicrosoftAccess)是由微软发布的关联式数据库管理系统。它结合了MicrosoftJetDatabaseEngine和图形用户界面两项特点,是MicrosoftOffice的成员之一。其实Access也是微软公司另一个通讯程序的名字,想与ProComm以及其他类似程序来竞争。可是事后微软公司证实这是个失败的计划,数年后他们把名字重新命名于数据库软件。另外,Access还是C语言的一个函数名和一种交换机的主干道模式。2.Access是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS,即RelationalDatabaseManagementSystem),是Office系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。41 三门峡职业技术学院毕业设计(论文)第3章子系统详细设计与实现3.1C#后台连接数据库详细步骤通过C#Web.Config配置ConnectionStrings来连接后台的数据库后台新建一个连接数据库的类publicOleDbConnectionxm;//初始化数据库链接变量,表示数据源的链接打开状态publicOleDbCommandcmd=newOleDbCommand();//表示数据的存储过程实例化数据存储命令publicDataSetds=newDataSet();实例化数据集,表示数据在内存的缓存publicOleDbDataAdapteradt=newOleDbDataAdapter();//实例化数据适配器,用于填充数据集和更新数据源publicClass1()//链接数据库的类1{xm=newOleDbConnection("provider=microsoft.jet.oledb.4.0;datasource="+Server.MapPath("~/xmdata/%xm.mdb"));}//第二个链接数据库的类publicclasscondb2:Page{privateOleDbConnectionconn;初始化数据库链接变量privateOleDbDataAdapteroda=newOleDbDataAdapter();同上privateOleDbCommandcmd;同上privateDataSetmyds=newDataSet();同上publiccondb2()同上{conn=newOleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+Server.MapPath(@"~/xmdata/%xm.mdb"));}publicDataSetgetDS(stringstrSQL)//通过数据集来进行数据在内存的缓存执行{myds=newDataSet();oda=newOleDbDataAdapter(strSQL,conn);oda.Fill(myds);returnmyds;}41 三门峡职业技术学院毕业设计(论文)然后通过C#程序语言usingSystem.Data;usingSystem.Configuration;usingSystem.Collections;实例化所建的类来提取数据库publicClass1xm=newClass1();//初始化数据库连接类publicclsPublics=newclsPublic();//初始化后台建的公共类,执行一些具备公共具备的简单功能privateDataSetmydsList=newDataSet();最后打开连接如示conn.Open();//打开数据库链接myds=newDataSet();oda=newOleDbDataAdapter(strSQL,conn);//提取数据库oda.Fill(myds,si,mi,"tab1");//填充数据源conn.Close();//数据库连接关闭returnmyds;//返回已经填充好的数据集通过DataSet获得提取后台数据库的数据,在前台显示。DataSetds=newDataSet();ds=xm.getDataSet("SELECT*FROM[menu]");提取完数据库在关闭连接即完成数据库后台链接3.2后台主窗体设计网上商城购物系统后台管理主窗体效果如图:图3-1主窗体主窗体设计步骤如下:(1)启动Visualstudio2005,选择“文件”点击“新建网站”对话框。将自己所要开发的项目名称填写以及保存路径。41 三门峡职业技术学院毕业设计(论文)(1)新建工作完成后,点击确定即进入项目开发编辑区。(2)将所要开发的项目名称命名为“网上商城购物系统”。(3)在该编辑页面右侧拉入一个PANEL控件,调整其大小,使其适合页面的大小,并在该控件上方植入一个小的table控件,定位两行两列,设置其大小,最后在里面植入所需的LABEL空间用于显示已经登录的用户。如图图3-2(4)在开发区的工具栏“导航”项目中拉入控件”Menu”控件,然后在右键该控件在编辑区填写配置所需要的下拉菜单,命名为“商品栏目配置“。如图所示图3-3(5)在源代码中对下拉的名单进行代码连接配置,使前台下拉菜单形成一个下拉链接功能菜单如示

  • 商品栏目配置
  • 商品信息管理
  • 添加商品信息
  • ………………………………………………//其他类同省略(7)同样的控件在拉下建立三个,进行代码和控件配置,并命名为“用户配置”、“发货订单”、“版权信息“。(8)然后在后台写入代码即可在LABEL控件显示登录的用户如图protectedvoidPage_Load(objectsender,EventArgse){if(Session["isadminlogins"]==null)//判断登录状态{Response.Redirect("../index.aspx");}this.Label1.Text=Session["isadminlogins"].ToString();//将值赋给Label控件}3.3后台登陆窗口设计后台登录窗体如图图3-4登录窗体//链接数据库的代码usingSystem;usingSystem.Data;//引用所有系统数据库类usingSystem.Configuration;//引用系统配置usingSystem.Collections;//引用系统所以链接usingSystem.Web;41 三门峡职业技术学院毕业设计(论文)usingSystem.Web.Security;usingSystem.Web.UI;usingSystem.Web.UI.WebControls;//引用系统的UI-WEBCONTROLS控件usingSystem.Web.UI.WebControls.WebParts;usingSystem.Web.UI.HtmlControls;//引用系统的UI-HTMLCONTROL控件publicClass1xm=newClass1();//实例化化数据连接类publicclsPublics=newclsPublic();实例化公关类//Class1类是后台新建的链接数据库的类publicclassClass1:System.Web.UI.Page{publicOleDbConnectionxm;publicOleDbCommandcmd=newOleDbCommand();publicDataSetds=newDataSet();publicOleDbDataAdapteradt=newOleDbDataAdapter();publicClass1(){xm=newOleDbConnection("provider=microsoft.jet.oledb.4.0;datasource="+Server.MapPath("~/xmdata/%xm.mdb"));}通过此类可以验证所登录的后台管理员用户。如示代码protectedvoidImageButton1_Click(objectsender,ImageClickEventArgse){if(Page.IsValid==true){stringwebnz=this.webnz.Value.ToUpper();if(webnz==Session["validateNum"].ToString())//验证码验证{stringwebname=s.wipeScript(this.webname.Value.ToString());stringwebpaw=FormsAuthentication.HashPasswordForStoringInConfigFile(this.webpaw.Value.ToString().Replace("'","''"),"md5");//MD5加密Class1xm=newClass1();DataSetds=xm.getDataSet("select*from[xm_admin]wherexm_name='"+webname+"'andxm_pwd='"+webpaw+"'");intcount=ds.Tables[0].Rows.Count;if(count<=0){s.rScript(this.GetType(),"",this.Page);//验证用户41 三门峡职业技术学院毕业设计(论文)}else{Session["isadminlogins"]=webname;Server.Transfer("index.html");}}else{s.rScript(this.GetType(),"",this.Page);}}登录随机生成码设计:publicpartialclassRandomNumImg:System.Web.UI.Page{protectedvoidPage_Load(objectsender,EventArgse){//生成随机生成器Randomrandom=newRandom();stringvalidateNum="";strings="0123456789QWERTYUIOPASDFGHJKLZXCVBNM";for(inti=0;i<4;i++){validateNum+=s[random.Next(s.Length)];}HttpContext.Current.Session["validateNum"]=validateNum;//在此处放置用户代码以初始化页面Bitmapimage=newBitmap((int)Math.Ceiling(validateNum.Length*12.5),22);Graphicsg=Graphics.FromImage(image);try{//清空图片背景色g.Clear(Color.White);Fontfont=newFont("Arial",12,(FontStyle.Bold));LinearGradientBrushbrush=newLinearGradientBrush(newRectangle(0,0,image.Width,image.Height),Color.OrangeRed,Color.OrangeRed,1.2f,true);g.DrawString(validateNum,font,brush,random.Next(1)+1,random.Next(1)+1);//画图片的边框线41 三门峡职业技术学院毕业设计(论文)//保存图片数据MemoryStreamstream=newMemoryStream();image.Save(stream,ImageFormat.Jpeg);//输出图片Response.Clear();Response.ContentType="image/jpeg";Response.BinaryWrite(stream.ToArray());}finally{g.Dispose();image.Dispose();//最后释放图片}}3.4会员客户管理信息模块会员客户管理信息模块包括对已经注册的会员信息修改、删除。3.4.1会员修改删除模块该信息模块课对系统注册的会员客户进行密码修改,删除已经注册的客户。如图所示:图3-5用户注册管理1.该模块信息技术分析在该信息模块中,我们首先利用实例化我们已经建立的数据库链接类Class1.CS来链接我们所需要的数据库。然后我们通过protectedvoidPage_Load41 三门峡职业技术学院毕业设计(论文)来加载显示已经注册和数据库存着的数据库,并且显示到我们设置好的控件在前台显示。我们利用SELECT来提取后台数据库。Selectcolumn_listfromtablewhere[条件]orderbycolumn_list排序(DESC|ASC)Table:所需要查找的后台数据表名称。Where:后面根据自己的条件来查找出自己所需要的数据库。column_list:自己做需要查找的列名。orderby子句:确定是否将查询出的结果按一列或多列中的数据进行排序,DESC(降序)ASC(升序)下面如图就是代码实现的过程:DataSetds=newDataSet();ds=xm.getDataSet("SELECT*FROM[user_a]ORDERBYidDESC");2.该模块实现过程在该信息模块中使用到的数据表是:“user_a”表(1)新建一个动态页面,拉入一个表格table控件,在里面植入所需一个repeater控件、一个literal控件和一个checkbox控件,在表格顶端重新再拉入一个TABLE控件,将标题写为“注册用户管理”。控件ID控件别名TableTableCheckBoxCheckbox1LiteralLiteral1RepeaterList_Links(2)我们介绍一下Repeater控件:Repeater控件可用于显示重复的项目列表,使这些项目被限制在控件通过DataSet把数据绑定到该控件模块,显示到前台在Repeater控件里面配置修改模板ItemTemplate,在里面添加相应的TextBox控件和Button控件,TextBox用于显示后台的用户名和密码相关信息,Button用于实现功能修改和删除事件。将两个Button分别命名为“修改”、“删除”,TextBox密码框设置为密码属性。(3)然后编写相应的代码再后台,点击“修改”按钮编写事件代码如图3-6if(e.CommandName=="Button1"){TextBoxtbt=(TextBox)e.Item.FindControl("txtlinkTitle");TextBoxtbt1=(TextBox)e.Item.FindControl("txtlinkTitles");stringbb=FormsAuthentication.HashPasswordForStoringInConfigFile(tbt1.Text,"md5");Literallt=(Literal)e.Item.FindControl("Literal2");xm.setDS("UPDATEuser_aSETuser_pwd='"+bb+"'WHEREid="+lt.Text);s.rScript(this.GetType(),"",this.Page);41 三门峡职业技术学院毕业设计(论文)}图3-6修改成功点击“删除”按钮编写相应代码如图3-7:图3-7protectedvoidlist_links_ItemDataBound(objectsender,RepeaterItemEventArgse){ButtonbtnDel=(Button)e.Item.FindControl("Button2");btnDel.Attributes.Add("onclick","returnconfirm('是否确定要删除此栏目?');");}elseif(e.CommandName=="Button2"){Literallt2=(Literal)e.Item.FindControl("Literal2");xm.setDS("DELETEFROMuser_aWHEREid="+lt2.Text);s.rScript(this.GetType(),"",this.Page);}(4)利用Literal控件可实现客户端源脚本代码效率更加提高,通过CheckBox可以选择需要删除的项,通过删除链接直接删除。代码所示:if(Request.QueryString["ac"]!=null&&Request.QueryString["ac"].ToString().ToLower()=="delall"){string[]lid=Request.Form["sLink"].ToString().Split(',');for(inti=0;ialert('所选记录删除完成!');location='name.aspx?page="+Session["lp"].ToString()+"';",this.Page);3.4.2会员客户留言模块该模块可以使注册和非本站用户匿名留言,提建议,进一步可以增加客户机用户对本站的建议,使网站越办越好。如图:后台留言管理模块图3-8网站栏目配置该模块实现过程和客户修改模块相似在该模块信息中,同样也采用了这三个主要的控件(CheckBox、Literal、Repeater),具体用法和上面类似。下面简单说一下具体里面重要的功能代码:首先在页面加载时候自动从数据库调取数据如示:DataSetds=newDataSet();ds=xm.getDataSet("SELECT*FROM[book]ORDERBYidDESC");//调取数据库if(ds.Tables[0].Rows.Count>0){ds=xm.getDataSet2("SELECT*FROM[book]ORDERBYidDESC",m,15);Paginationpg=newPagination(ds.Tables[0].Rows.Count,l,"book.aspx",15);this.Literal1.Text=pg.showPage();this.list_links.DataSource=ds.Tables[0].DefaultView;this.list_links.DataBind();}41 三门峡职业技术学院毕业设计(论文)点击删除按钮:elseif(Request.QueryString["ac"].ToString().ToLower()=="delsingle"){DataSetds=newDataSet();设置实例化数据集ds=xm.getDataSet("SELECT*FROM[book]WHEREid="+Request.QueryString["pid"].ToString());//提取数据if(xm.setDS("DELETEFROM[book]WHEREid="+Request.QueryString["pid"].ToString()))//判断删除是否完成{s.rScript(this.GetType(),"",this.Page);}else{s.rScript(this.GetType(),"",this.Page);}}elseif(Request.QueryString["ac"].ToString().ToLower()=="delall"){s.rScript(this.GetType(),"",this.Page);}}else{if(Request.QueryString["ac"].ToString().ToLower()=="delall"){string[]pid=Request.Form["sProduct"].ToString().Split(',');for(inti=0;ialert('所选记录删除完成!');location='book.aspx?page="+Session["lp"].ToString()+"';",this.Page);}41 三门峡职业技术学院毕业设计(论文)点击管理员回复跳转到页面“book_list.aspx”如图图3-9添加商品信息点击确定按钮进行代码编辑即可回复留言:protectedvoidImageButton1_Click1(objectsender,ImageClickEventArgse){stringid=Request.QueryString["id"].ToString();stringa1=s.wipeScript(this.TextBox1.Text);xm.setDS("UPDATE[book]SETbook_kf='"+a1+"'WHEREid="+id);s.rScript(this.GetType(),"",this.Page);}3.5商品管理信息模块商品管理信息模块包括商品栏目分类管理、商品信息管理、添加商品等。3.5.1商品栏目管理该模块可以管理商品的分类和类别添加。如图41 三门峡职业技术学院毕业设计(论文)图3-10商品栏目分类表1.用到的数据表:shop_styl(商品栏目分类表)2.该栏目显示修改删除方面类似于会员修改删除方面,与上相比在添加方面增加了请求验证控件,并且引用了数据库插入语法操作Insert。3.下面我们单独重点说一下请求验证控件的功能实现,如图3-11添加栏目红色显示即为请求验证控件,它可以提示用户做一些必要的操作。(1)首先在该窗口“添加栏目标题”这个表格中拉入需要的控件,TextBox1个、RequiredFiledValidator(请求验证控件)1个、ImageButton一个。(2)然后在RequiredFiledValidator的属性设置其ControlToValidate为对应的TextBox,设置其的ErrorMessage为“不能为空”。(3)关于数据库的插入语法操作,我们简单介绍一下InsertInto语句的语法格式如下:INSERTINTOtable_name[(column_list)]Values(data_values)lTable_name:要添加记录的数据表名称lColumn_list:是表中的字段列表,表示向表中哪些字段插入数据。如果是多个字段,字段之间用逗号分割。不指定column_list,默认向数据表中所有字段插入数据。lData_values:要添加的数据列表,各个数据之间使用逗号分隔。数据列表中的个数、数据类型必须和字段列表中的字段个数、数据项类型一致。41 三门峡职业技术学院毕业设计(论文)在我们点击该页面的我们添加的按钮就会执行插入操作图3-12//添加成功会弹出窗口提示protectedvoidImageButton1_Click(objectsender,ImageClickEventArgse){stringa1=this.TextBox1.Text;DataSetds=xm.getDataSet("INSERTINTO[shop_styl](shop_styl)VALUES('"+a1+"')");//执行插入新的数据s.rScript(this.GetType(),"",this.Page);}3.5.2商品信息管理该模块包括商品的修改、删除等。如图图3-13商品栏目分类表1.用到的数据表:shop(商品信息表)2.该模块实现方法类同与上面讲述的会员添加删除模块,所使用的控件也大致一样3.数据库显示方法和会员管理模块也大致一样41 三门峡职业技术学院毕业设计(论文)3.5.3添加商品信息该模块主要包括商品信息的添加更新,如图图3-14添加商品信息1.用到的数据表:shop(商品信息表)2.该模块主要采用表格布局,引入控件TextBox(文本框)、DropdownList(下拉菜单)、FileUpload(上传控件)、Button、ImageButton、Repeater等控件3.重点讲一下图片上传,浏览照片通过上传按钮上传到相应的路径和后台数据库,代码如示:(1)首先点击Button写上传方面的代码:通过TRY方法判定条件Try{//判断图片大小是不是超过限制if(intFileLength>800000){this.Label1.Text="图片大于5000k,不能上传";return;}//判断所上传的路径是否存在,不存在的话自动创建文件夹if(!System.IO.Directory.Exists(Server.MapPath(strUpPath))){System.IO.Directory.CreateDirectory(Server.MapPath(strUpPath1));}stringstrUrl=Server.MapPath(strUpPath1+@"/"+41 三门峡职业技术学院毕业设计(论文)lnFileName);stringstrUrl1=Server.MapPath(strUpPath1+@"/"+lnFileName1);stringstrUrl2=Server.MapPath(strUpPath2+@"/"+lnFileName2);//最后开始上传文件this.FileUpload1.SaveAs(strUrl);MakeThumbnail(strUrl,strUrl1,120,169,"Cut");//截取上传图片SmallPicWidth1(strUrl,strUrl2,540,379);this.TextBox5.Text=strUpPath+@"/"+lnFileName2;this.TextBox6.Text=strUpPath+@"/"+lnFileName1;xm.setDS("INSERTINTOshop_shop(shop_id,shop_tp,shop_tp1)VALUES('0','"+TextBox5.Text+"','"+TextBox6.Text+"')");xm.getDataSet("SELECT*FROMshop_shopWHEREshop_id='0'");this.Repeater1.DataSource=xm.ds.Tables[0].DefaultView;this.Repeater1.DataBind();如果不符合要求则TRY方法上传失败catch(System.Exceptionex){this.Label1.Text="图片上传失败:"+ex.Message;}(2)上传时候需要创建一个方法,即上述代码所示的SmallPicWidth1和MakeThumbnail方法截取图片大小publicstaticvoidMakeThumbnail(stringoriginalImagePath,stringthumbnailPath,intwidth,intheight,stringmode){System.Drawing.ImageoriginalImage=System.Drawing.Image.FromFile(originalImagePath);。。。。。。。。。。。。。。。。。。。//声明变量省略switch(mode){case"HW"://指定高宽缩放(可能变形)break;case"W"://指定宽,高按比例toheight=originalImage.Height*width/originalImage.Width;break;case"H"://指定高,宽按比例41 三门峡职业技术学院毕业设计(论文)towidth=originalImage.Width*height/originalImage.Height;break;case"Cut"://指定高宽裁减(不变形)。。。。。。。。。。。。。。。。。。。。。。。。//判定条件省略break;default:break;}//新建一个bmp图片System.Drawing.Imagebitmap=newSystem.Drawing.Bitmap(towidth,toheight);//新建一个画板System.Drawing.Graphicsg=System.Drawing.Graphics.FromImage(bitmap);//设置高质量插值法g.InterpolationMode=System.Drawing.Drawing2D.InterpolationMode.High;//设置高质量,低速度呈现平滑程度g.SmoothingMode=System.Drawing.Drawing2D.SmoothingMode.HighQuality;//清空画布并以透明背景色填充g.Clear(System.Drawing.Color.Transparent);//在指定位置并且按指定大小绘制原图片的指定部分g.DrawImage(originalImage,newSystem.Drawing.Rectangle(0,0,towidth,toheight),newSystem.Drawing.Rectangle(x,y,ow,oh),System.Drawing.GraphicsUnit.Pixel);try{//以jpg格式保存缩略图bitmap.Save(thumbnailPath,System.Drawing.Imaging.ImageFormat.Jpeg);}catch(System.Exceptione)(3)最后通过图片按钮“确定”将数据提取到后台数据库,方法和上面讲述的插入操作类似,不再讲解。3.6物流订单信息模块该信息模块主要包括发货和订单管理的主要功能模块。41 三门峡职业技术学院毕业设计(论文)3.6.1物流管理模块该模块主要包括对药发货订单的配置,修改、删除等。如图图3-15发货信息表1.用到的数据表:[ment](发货信息表)2.该模块修改删除模块和商品管理修改删除模块功能相似,实现方法也类同,不再做过多的技术介绍,添加物流订单信息业和添加商品栏目的实现相同。3.下面简单说明一下在文本框修改自己所要写的信息,点击修改会提示图3-16删除此订单时图3-1741 三门峡职业技术学院毕业设计(论文)添加订单图3-183.6.2订单管理模块该模块主要包括订单发货修改、删除等。如图图3-19订单信息表1.用到的数据表:[pay](订单信息表)2.该模块也和上面实现方法类似,只不过上面的修改功能变成发货而已,删除功能和上面类同,不再做过多的讲解。3.下面简单说一下发货的管理如图点击“发货”,配置所需要的信息和订单号41 三门峡职业技术学院毕业设计(论文)图3-20添加商品信息(1)发货管理主要涉及三个控件DropdownList、TextBox、Button按钮。(2)通过表格布局和上面其他的布局基本类同,通过点击确定按钮将值添加到后台数据库,更新数据库订单信息。如图图3-21(3)具体代码和上面讲解的插入数据库代码类似xm.setDS("INSERTINTO[ment](ment_name,ment_ems)VALUES('"+a3+"','"+a1+"')");//插入数据s.rScript(this.GetType(),"",this.Page);//修改成功S是上面讲解的公共类的实例化一个变量对象。publicClass1xm=newClass1();publicclsPublics=newclsPublic();41 三门峡职业技术学院毕业设计(论文)3.7系统管理员信息模块该信息模块主要包括了系统管理员后台的修改、添加、删除等。3.7.1管理员修改、删除、添加模块该信息模块如图图3-22管理员信息表1.用到的数据表:[xm_admin](管理员信息表)2.该模块管理员修改删除模块和上面类同,添加管理员模块也和上面类同,也不做过多的讲解。3.添加账户和上面会员管理模块讲解的插入更新方法一样,代码也类同。此模块可以修改后台管理员的密码和添加新的后台管理员。3.8系统信息管理模块该信息模块主要包括本地信息显示、最新通知管理模块、广告链接管理、友情链接管理、最新通知管理模块、导航模块。本地信息显示如图41 三门峡职业技术学院毕业设计(论文)3-23本地信息该信息模块主要通过读取系统信息来在表格中显示。td>计算机机名<%Response.Write("http://"+HttpContext.Current.Request.Url.Host+HttpContext.Current.Request.ApplicationPath);%>……………………………………//其他的省略,从系统读取信息显示在前面页面3.8.1最新通知管理模块该信息模块主要包括最新网址信息通知、修改、删除等。如图图3-24新闻信息表1.用到的数据表:[news](新闻信息表)2.该模块的实现方法和上面会员管理、订单管理类似,不再做过多讲解41 三门峡职业技术学院毕业设计(论文)3.8.2添加最新通知模块该信息模块主要包括添加最新的网站信息等。如图图3-25添加新闻信息1.用到的数据表:[news](新闻信息表)2.该模块和上面一些模块讲解的插入更新操作大致一样。3.本模块主要也是利用Insert更新操作。如示publicClass1xm=newClass1();publicclsPublics=newclsPublic();stringa1=s.wipeScript(this.TextBox1.Text.ToString());stringa2=s.wipeScript(this.TextBox2.Text.ToString());xm.setDS("INSERTINTO[news](news_title,news_con)VALUES('"+a1+"','"+a2+"')");s.rScript(this.GetType(),"",this.Page);41 三门峡职业技术学院毕业设计(论文)结论本文主要介绍了网上商城购物系统的后台主要功能模块的开发详细步骤以及相关功能实现。本系统后台主要功能模块实现了商品管理、注册用户以及系统管理员的管理、订单物流的管理、客户留言管理四个主要功能模块,可以及时对商品、客户信息进行修改添加删除,并且对每个操作后台系统会做出相应的判断,防止误操作的现象发生,保证了后台数据的安全性。本系统后台管理简洁明了,运行快捷,人性化的操作流程使管理员能够快速掌握本后台管理的操作上手容易,方便使用。本系统虽然可以为用户即管理员提供一定的方便使用,但是由于现阶段的条件还不是很成熟,离实际应用还具有一定的差距,功能方面还有一些需要完善的地方,这些都是今后继续学习的目标,争取能够完善已经有的功能,增加新的功能,使本系统的发展更加成熟和完善。41 三门峡职业技术学院毕业设计(论文)参考文献[1]刘乃丽.完全手册ASP.NET2.0网路开发详解[M].北京:电子工业出版社,2008:11-12[2]尚俊杰.秦卫中.ASP.NET程序设计案例教程[M].北京:清华大学出版社,2005:11-12[3]王长松.数据库应用课程设计案例精编[M].北京:清华大学出版社,2009:4-8[4]谢俊译.[美]MICHAELR.GROH.Access2007宝典[M].人民邮电出版社,2008:12-16[5]杨继萍,梁文新.Access2007数据库应用与开发从新手到高手[M].北京:清华大学出版社,2008:12-16[6]张婷.Access2003公司数据库管理范例应用[M].中国青年出版社,2004:16-33[7]赵增敏.Access2002实用教程[M].北京:电子工业出版社,2003:16-33[8]张岭等.ASP.NET项目开发全程实录[M].北京:清华大学出版社,2008:11-12[9]尹增明等.ASP.NETWEB应用开发(C#版)[M].机械工业出版社,2008:11-12[10]杨云,王毅.ASP.NET2.0典型项目开发[M].人民邮电出版社,2007:11-12[11]杨建,李华,张胜利等.ASP.NET2.0课程设计案例精编[M].北京:清华大学出版社,2009:11-1241 三门峡职业技术学院毕业设计(论文)致谢在开发本系统的过程中遇到了很多困难,非常感谢朱平哲指导老师对我的帮助,我不仅在开发技术上有了突破,而且更注重开发细节,少走了很多弯路。从C#、ASP.NET语言的代码编写,到Access数据库的代码编写,从系统各个功能窗体设计,到数据表的设计编写,无一不凝聚着我的心血。整个系统从刚开始的分析设计、中途测试到最后设计完成,离不开我的的努力,也更离不开老师的指导。在实际的开发过程中,我积累了很多实际操作经验,并且对C#和ASP.NET的了解更深了一层。感谢朱平哲老师的教导,感谢学校的培养!41 三门峡职业技术学院毕业设计(论文)附录链接数据库类库类库Class1.cs(链接数据库的类):publicclassClass1:System.Web.UI.Page{publicOleDbConnectionxm;publicOleDbCommandcmd=newOleDbCommand();publicDataSetds=newDataSet();publicOleDbDataAdapteradt=newOleDbDataAdapter();publicClass1(){xm=newOleDbConnection("provider=microsoft.jet.oledb.4.0;datasource="+Server.MapPath("~/xmdata/%xm.mdb"));//xm.Open();////TODO:在此处添加构造函数逻辑//}publicDataSetgetDataSet(stringsqlstr){adt=newOleDbDataAdapter(sqlstr,xm);ds.Clear();xm.Close();adt.Fill(ds,"Table");returnds;}publicDataSetgetDataSet2(stringsqlstr,intsi,intmi){xm.Open();adt=newOleDbDataAdapter(sqlstr,xm);adt.Fill(ds,si,mi,"tab1");xm.Close();41 三门峡职业技术学院毕业设计(论文)returnds;}publicboolsetDS(stringsqlstr){xm.Open();cmd=newOleDbCommand(sqlstr,xm);cmd.ExecuteNonQuery();xm.Close();returntrue;}publicvoidexc(stringsqlstr){cmd.Connection=xm;cmd.CommandText=sqlstr;cmd.ExecuteNonQuery();}publicvoidclose(){if(xm.State==ConnectionState.Open){xm.Close();}xm.Dispose();cmd.Dispose();xm.Close();ds.Dispose();adt.Dispose();}}链接公共类clsPublic.cs:publicclassclsPublic:Page{publicclsPublic(){////TODO:在此处添加构造函数逻辑//}publicClass1xm=newClass1();publicvoidrScript(Typect,stringcs,Pagep){ClientScriptManagers=p.ClientScript;41 三门峡职业技术学院毕业设计(论文)s.RegisterStartupScript(ct,"",cs);}publicvoidsetInfo(stringTitleInfo,Pagep){DataSetds=xm.getDataSet("SELECT*FROM[index]");p.Title=ds.Tables[0].Rows[0]["index_name"].ToString()+TitleInfo;HtmlMetaHM=newHtmlMeta();HM.Name="keywords";HM.Content=ds.Tables[0].Rows[0]["index_meta"].ToString();p.Header.Controls.Add(HM);HM=newHtmlMeta();HM.Name="Description";HM.Content=ds.Tables[0].Rows[0]["index_metas"].ToString();p.Header.Controls.Add(HM);}publicstringgetData(stringTableName,stringFielDsName){xm.getDataSet("SELECT*FROM["+TableName+"]");returnxm.ds.Tables[0].Rows[0][FielDsName].ToString();}publicstringgetleft(strings1,Int32J){if(s1.Length>J){returns1.Substring(0,J)+"...";}else{returns1;}}publicstringwipeScript(stringhtml){System.Text.RegularExpressions.Regexregex1=newSystem.Text.RegularExpressions.Regex(@"",System.Text.RegularExpressions.RegexOptions.IgnoreCase);System.Text.RegularExpressions.Regexregex2=new41 三门峡职业技术学院毕业设计(论文)System.Text.RegularExpressions.Regex(@"href*=*[sS]*script*:",System.Text.RegularExpressions.RegexOptions.IgnoreCase);System.Text.RegularExpressions.Regexregex3=newSystem.Text.RegularExpressions.Regex(@"on[sS]*=",System.Text.RegularExpressions.RegexOptions.IgnoreCase);System.Text.RegularExpressions.Regexregex4=newSystem.Text.RegularExpressions.Regex(@"",System.Text.RegularExpressions.RegexOptions.IgnoreCase);System.Text.RegularExpressions.Regexregex5=newSystem.Text.RegularExpressions.Regex(@"",System.Text.RegularExpressions.RegexOptions.IgnoreCase);html=regex1.Replace(html,"");//过滤标记html=regex2.Replace(html,"");//过滤href=javascript:()属性html=regex3.Replace(html,"_disibledevent=");//过滤其它控件的on...事件html=regex4.Replace(html,"");//过滤iframehtml=regex5.Replace(html,"");//过滤framesetreturnhtml;}privatestringHTMLEncode(stringfString){if(fString!=string.Empty){///替换尖括号fString.Replace("<","<");fString.Replace(">","&rt;");///替换引号fString.Replace(((char)34).ToString(),""");fString.Replace(((char)39).ToString(),"'");///替换空格fString.Replace(((char)13).ToString(),"");///替换换行符fString.Replace(((char)10).ToString(),"
    ");}return(fString);}}链接数据库类condb2.cs:publicclasscondb2:Page{privateOleDbConnectionconn;41 三门峡职业技术学院毕业设计(论文)privateOleDbDataAdapteroda=newOleDbDataAdapter();privateOleDbCommandcmd;privateDataSetmyds=newDataSet();publiccondb2(){////TODO:在此处添加构造函数逻辑//conn=newOleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+Server.MapPath(@"~/xmdata/%xm.mdb"));}publicDataSetgetDS(stringstrSQL){myds=newDataSet();oda=newOleDbDataAdapter(strSQL,conn);oda.Fill(myds);returnmyds;}publicDataSetgetDS2(stringstrSQL,intsi,intmi){conn.Open();myds=newDataSet();oda=newOleDbDataAdapter(strSQL,conn);oda.Fill(myds,si,mi,"tab1");conn.Close();returnmyds;}publicboolsetDS(stringstrSQL){conn.Open();cmd=newOleDbCommand(strSQL,conn);cmd.ExecuteNonQuery();conn.Close();returntrue;}}41

    当前文档最多预览五页,下载文档查看全文

    此文档下载收益归作者所有

    当前文档最多预览五页,下载文档查看全文
    温馨提示:
    1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
    2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
    3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
    4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
    大家都在看
    近期热门
    关闭