SHOP鞋子商城网站.doc_第1页
SHOP鞋子商城网站.doc_第2页
SHOP鞋子商城网站.doc_第3页
SHOP鞋子商城网站.doc_第4页
SHOP鞋子商城网站.doc_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

南开大学滨海学院计算机科学系课程设计报告 - 28 -南开大学滨海学院计算机科学系课 程 设 计 报 告 课题名称: SHOP鞋子商城网站 专 业: 数字媒体 班 级: 二班 学号姓名: 09990054 贾贺 指导教师: 李志玲 完成日期: 20102.6.3SHOP鞋子商城网站摘要:网上商城系统开发存在的两个问题就是后台的管理与消费者操作的方便性,系统从数据库开发的基本内容入手,利用动态网页设计技术A和微软公司的大型数据库管理系统SQL Server 2000开发了基于的在线用户管理模块、在线商品销售模块、在线后台管理模块。实现了最重要的商品销售功能,也就是管理库房中的商品,及管理用户的购物车,从而实现结帐等一系列功能。另外网上商品销售系统还提供给用户查找数据库中商品相关记录的功能。同时,为了保证商品交易的正常进行,还实现了用户的登录注册功能。网上鞋子商城系统按照软件工程的要求,对系统进行需求分析,总体设计,详细设计,编码与测试,在此基础上将理论知识与开发技术运用到系统的实现过程当中,完成了网上鞋子商城平台的构建。经过大量的系统测试发现,网站的访问速度较块,安全性较好,有很强的实用性。本论文详细介绍了开发网上商城的全过程,是按软件工程的思想设计的 ,包括需求分析、系统总体设计、系统详细设计等。本系统具有多方面特点:系统功能完备,使用方便简捷,人性化的用户界面,安全保密设置齐全,节省经营成本,大大减少了操作人员的工作负担。关键字:购物车,数据库管理,网上鞋子商城 AbstractsTo develop the web shop system exist two issues. One is the background management the other is the convenience operation for consumers this article take the database development as the basic start use the ASP.NET technology to develop web-based online user management module online book sales module online background management module. It implement the most important book sale function i.e. manage the shop and shopping car of consumer thus it implement a series of functions such as check-out In addition, the online book sale system is also provided searching the database record function to consumer. Mean wile in order to guarantee the normal trade. the system implements a registered user login function. Web shop systems conform to the specification of soft project, the system needs analysis, design, detailed design, Coding and testing, on this basis, taking the theoretical knowledge and development of technologies to the system implementation process complete the web shop platform building.This manual in details introduced to develop the web shop system in the Internet, is thought design that press the software engineering of, include detailed design etc. of total design, system of need analysis, system.This system has the various characteristics: The system function is complete, using convenient, humanized customer interface, the safety keeps secret to establish well-found, economical management cost, reduced to operate the personnels work burden consumedly.Key Words Cart,Database Management,Web shop 目录一、前言1.1问题的提出41.2问题的解决4二、准备知识2.1ASP简介42.2ASP特点52.3ASP工作原理6三、系统概述.系统设计思想7.系统总体结构图7.系统功能模块图7.系统开放工具8四、系统功能模块设计.客户端(前台).会员注册8.购物车14.商品查询18.订单查询19.5首页商品布局20.数据库管理端(后台).商品资料管理20.商品交易管理21.会员管理23.操作管理23.退出管理24五、系统数据库的建立.1系统数据源的设置25.2系统数据库的详细建立25六、总结26 致 谢 27 参考文献28一前 言11问题的提出随着Internet的不断普及,人们对于互联网技术的要求已不单单是浏览一下网页,收发电子邮件,日益忙碌的人们开始追求足不出户的利用互联网这一强大的平台来实现的网上购物。对于基于Web平台的网上购物系统,存在着一个前台应用和后台管理的问题。而无论前台还是后台,都要对数据库进行调用和操作。因此如何创建网络数据库,以及客户端如何调用服务器端的数据库成为实现网上购物的一个关键性问题。12问题的解决 随着计算机网络技术的高速发展,传统的桌面系统、C/S架构系统已经不能满足社会的需要。当今社会是一个网络社会,电子商务系统、企业信息系统已经走进了网络应用系统阶段。如何快速开发出适应社会各个行业发展的网络应用系统是摆在人们前面的一个难题。选择什么样的开发平台、开发工具、开发语言、开发技术直接影响行业的信息化建设。.NET的问世给开发人员带来了一种全新的开发框架,它已经成为一种令人激动的、具有革命性和发展性的新技术。.NET为行业的信息化提出了彻底解决方案,不论Web开发者、组件开发者、数据开发者、VB GUI 开发者,还是任何基于Windows平台的开发者,.NET都以一种全新的开发模式使开发人员更好、更快速的完成工作。因此在开发工具的选择上,我们选择了对数据库有强大功能的数据库开发系统,于是选择了微软公司的最新动态网页设计技术A和微软公司的大型数据库管理系统SQL Server 2000。2 准备知识ASP.NET技术21 ASP.NET的简介ASP.NET不仅仅是下一版本的 Active Server Page (ASP),而且还是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。ASP.net提供许多比现在的Web开发模式强大的的优势。它是统一的 Web 开发平台,用来提供开发人员快速生成企业级 Web 应用程序所需的服务。ASP.NET 的语法在很大程度上与 ASP 兼容,同时它还提供一种新的编程模型和结构,用于生成更安全、可伸缩和稳定的应用程序。22 ASP.NET的特点 增强的性能ASP.NET 是在服务器上运行的编译好的公共语言运行库代码。ASP.NET 可利用早期绑定、实时编译、本机优化和盒外缓存服务。这相当于在编写代码行之前便显著提高了性能。 世界级的工具支持ASP.NET 框架补充了 Visual Studio 集成开发环境中的大量工具箱和设计器。WYSIWYG 编辑、拖放服务器控件和自动部署只是这个强大的工具所提供功能中的少数几种。 强大性和适应性因为ASP.net是基于通用语言编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.net的Web应用中。ASP.net同时也是language-independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C+和Java的结合体),VB,Jscript。这样的多种程序语言协同工作的能力会保护您现在的基于COM+开发的程序,能够完整的移植向ASP.net。 威力和灵活性由于 ASP.NET 基于公共语言,因此,Web 应用程序开发人员可以利用整个平台的威力和灵活性。.NET 框架类库、消息处理和数据访问解决方案都可从 Web访问。ASP.NET 也与语言无关,所以可以选择最适合应用程序的语言,或跨多种语言分割应用程序。另外,公共语言运行的交互性可保证在迁移到 ASP.NET 时保留基于 COM 的开发中的现有投资。 简易性ASP.NET 使执行常见任务变得容易,从简单的窗体提交和客户端身份验证到部署和站点配置都非常简单。例如,ASP.NET 页框架使您可以生成将应用程序逻辑与表示代码清楚分开的用户界面,类似在 Visual Basic 的简单窗体处理模型中处理事件。允许你建立你自己的用户分界面,使其又不同于常见的VB-Like界面。另外,公共语言运行库利用托管代码服务(如自动引用计数和垃圾回收)简化了开发,使把代码结合成软件简单的就像装配电脑。 可管理性ASP.NET使用一种字符基础的、分级的配置系统,使你服务器环境和应用程序的设置更加简单。因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。这种被称为Zero Local Administration的哲学观念使A的基于应用的开发更加具体、快捷。一个ASP.net的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须文件,不需要系统的重新启动,一切就是这么简单。 可缩放性和可用性ASP.NET 在设计时考虑了可缩放性,增加了专门用于在聚集环境和多处理器环境中提高性能的功能。另外,进程受到 ASP.NET 运行库的密切监视和管理,以便当进程行为不正常(泄漏、死锁)时,可就地创建新进程,以帮助保持应用程序始终可用于处理请求。 自定义性和扩展性ASP.NET 随附了一个设计周到的结构,它使开发人员可以在适当的级别“插入”代码。实际上,可以用自己编写的自定义组件扩展或替换 ASP.NET 运行库的任何子组件。 安全性借助内置的 Windows 身份验证和基于每个应用程序的配置,可以保证应用程序是安全的。23 ASP.NET的工作原理如果浏览器向IIS/PWS请求的是.HTM文件,那么IIS/PWS会直接把文件的内容传给浏览器.但如果浏览器向IIS/PWS请求的是.ASP文件,则IIS/PWS会首先解释文件.IIS/PWS解释.ASP文件的过程中,遇到HTML标记或一般文字时会直接把读区的内容传给浏览器.但如果遇到的标记,则会把其中的内容视为程序,然后解释执行,但程序经过IIS/PWS解释执行后,其源程序代码不会传给浏览器,而只是把可显示的运行结果传给了浏览器Active Server Page技术为应用开发商提供了基于脚本的直观、快速、高效的应用开发手段,极大地提高了开发的效果。ASP脚本是采用明文(plain text)方式来编写的。 ASP脚本是一系列按特定语法(目前支持vbscript和jscript两种脚本语言)编写的,与标准HTML页面混合在一起的脚本所构成的文本格式的文件。当客户端的最终用户用WEB浏览器通过INTERNET来访问基于ASP脚本的应用时,WEB浏览器将向WEB服务器发出HTTP请求。WEB服务器分析、判断出该请求是ASP脚本的应用后,自动通过ISAPI接口调用ASP脚本的解释运行引擎(ASP.DLL)。ASP.DLL将从文件系统或内部缓冲区获取指定的ASP脚本文件,接着就进行语法分析并解释执行。最终的处理结果将形成HTML格式的内容,通过WEB服务器原路返回给WEB浏览器,由WEB浏览器在客户端形成最终的结果呈现。这样就完成了一次完整的ASP脚本调用。若干个有机的ASP脚本调用就组成了一个完整的ASP脚本应用。3 系统概述31系统设计思想整个系统是以ASP.NET技术开发,数据库的创建是使用Microsoft Access 2003软件,数据可得查询和调用是通过ASP.NET内置的ADODB组件来实现。为了便于编程,前台的操作页面和后台的数据库管理页面的设计是分别进行的,这个程序编写完之后,再将后台的数据库管理页面通过管理员在前台的登录来调用,这将前台和后台有机的连接起来,使操作更加方便。当用户以会员身份登录时调用执行的是前台操作页面,而以管理员身份登录时,则进入后台管理页面来对数据库进行操作。而前台购物操作中的核心部分-购物车的实现,这将在后面的功能模块设计章节中做详细概述,3.2系统结构图 3.3系统功能模块图功能结构:. 系统开发工具开发环境:Windows XP IIS 5.0(Internet Information Server 5.0)Internet Explorer 6.0脚本语言:Java、VB数据库工具:Microsoft Access 2000 网页设计: Dreameaver MX四、系统功能模块设计. 客户端(前台). .会员注册与登录首先登录到后台管理系统,依次:系统功能管理会员管理会员组管理,点击会员组管理出现如下界面用户注册代码/ 登录日期public int AddUInfo(string P_Str_Name, bool P_Bl_Sex, string P_Str_Password, string P_Str_TrueName, string P_Str_Questions, string P_Str_Answers, string P_Str_Phonecode, string P_Str_Emails, string P_Str_City, string P_Str_Address, string P_Str_PostCode)SqlConnection myConn = dbObj.GetConnection();SqlCommand myCmd = new SqlCommand(Pr_InsertUInfo, myConn);myCmd.CommandType = CommandType.StoredProcedure;/添加参数SqlParameter Name = new SqlParameter(Name, SqlDbType.VarChar, 50);Name.Value = P_Str_Name;myCmd.Parameters.Add(Name);SqlParameter sex = new SqlParameter(sex, SqlDbType.Bit, 1);sex.Value = P_Bl_Sex;myCmd.Parameters.Add(sex);SqlParameter Password = new SqlParameter(Password, SqlDbType.VarChar, 50);Password.Value = P_Str_Password;myCmd.Parameters.Add(Password);SqlParameter TrueName = new SqlParameter(TrueName, SqlDbType.VarChar, 50);TrueName.Value = P_Str_TrueName;myCmd.Parameters.Add(TrueName);SqlParameter Questions = new SqlParameter(Questions, SqlDbType.VarChar, 50);Questions.Value = P_Str_Questions;myCmd.Parameters.Add(Questions);SqlParameter Answers = new SqlParameter(Answers, SqlDbType.VarChar, 50);Answers.Value = P_Str_Answers; myCmd.Parameters.Add(Answers);SqlParameter Phonecode = new SqlParameter(Phonecode, SqlDbType.VarChar, 20);Phonecode.Value = P_Str_Phonecode;myCmd.Parameters.Add(Phonecode);SqlParameter Emails = new SqlParameter(Emails, SqlDbType.VarChar, 50);Emails.Value = P_Str_Emails;myCmd.Parameters.Add(Emails);SqlParameter City = new SqlParameter(City, SqlDbType.VarChar, 50);City.Value = P_Str_City;myCmd.Parameters.Add(City);SqlParameter Address = new SqlParameter(Address, SqlDbType.VarChar, 200);Address.Value = P_Str_Address;myCmd.Parameters.Add(Address);SqlParameter PostCode = new SqlParameter(PostCode, SqlDbType.Char, 10);PostCode.Value = P_Str_PostCode;myCmd.Parameters.Add(PostCode);SqlParameter MemberId = myCmd.Parameters.Add(MemberId, SqlDbType.BigInt, 8);MemberId.Direction = ParameterDirection.Output;/执行过程myConn.Open();try myCmd.ExecuteNonQuery();catch (Exception ex) throw (ex);finally myCmd.Dispose();myConn.Close();return Convert.ToInt32(MemberId.Value.ToString();用户登录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);); 员工组管理1、首先登录到后台管理系统2、依次:系统功能管理员工管理员工组管理,点击员工组管理出现如下界面新增员工1、首先登录到后台管理系统2、依次:系统功能管理员工管理新增员工,点击新增员工出现如下界面员工列表1、 首先登录到后台管理系统2、 依次:系统功能管理员工管理员工列表,点击员工列表出现如下界面3、可根据登录帐号、姓名、编号进行搜索员工权限1、首先登录到后台管理系统2、依次:系统功能管理员工管理员工权限,点击员工权限出现如下界面. .2购物车在设计购物车中,首先要考虑到的是购物车中商品信息的存储,而且在整个商品订购中没有改变,这里就需要用到ASP 的内置Session组件,它是访问者从到达某个页面到离开为止的那段时间,服务器端分配一个用于存储信息的全局变量的集合,这个变量可以自动生成,也可以是程序员在服务器端脚本程序中定义的。Session变量可以用来存储访问者的特定信息,创建访问者信息容器,我们使用它来充当虚拟购物车,无论什么时候用户在我们的网站中选择了意见商品,那么这种商品就好进入购物车里面,当用户准备离开是,就可以立即进行以上所以选择的商品的订购,这些购物信息可以存储在Session中。用户在Web应用程序中访问同一页面时,Session变量始终存在,当用户在应用程序的页面之间跳转时,存储在Session对象中的变量也不会清除。在建立购物车中,其实是对全局变量的操作。在这里我定义了一个全集变量ProductList=Session(”ProductList”),将购物信息保存到全局变量中。另外还定义一个全局变量Products,通过函数PutToShopBox()将ProductList的值赋给Products,调用函数Split()将读取的字符串进行分割,已得到购物信息:ProductList=Split(Request(”cpbn”),”,”)。建立购物车的详细代码:/ / 向用户表中插入信息/ / 会员名/ 性别/ 密码/ 真实姓名/ 找回密码问题/ 找回密码答案/ 电话号码/ E_Mail/ 会员所在城市/ 会员详细地址/ 邮编/ 预付金额购物车代码/ / 向购物车中添加信息/ / 图书编号/ 会员价格/ 会员编号public void AddShopCart(int P_Int_BookID, float P_Flt_MemberPrice, int P_Int_MemberID)SqlConnection myConn = dbObj.GetConnection();SqlCommand myCmd = new SqlCommand(Pr_InsertShopCart, myConn);myCmd.CommandType = CommandType.StoredProcedure;/添加参数SqlParameter BookID = new SqlParameter(BookID, SqlDbType.BigInt, 8);BookID.Value = P_Int_BookID;myCmd.Parameters.Add(BookID);SqlParameter MemberPrice = new SqlParameter(SumPrice, SqlDbType.Float, 8);MemberPrice.Value = P_Flt_MemberPrice;myCmd.Parameters.Add(MemberPrice);SqlParameter MemberID = new SqlParameter(MemberID, SqlDbType.BigInt, 8);MemberID.Value = P_Int_MemberID;myCmd.Parameters.Add(MemberID);/执行过程myConn.Open();try myCmd.ExecuteNonQuery();catch (Exception ex) throw (ex);finally myCmd.Dispose();myConn.Close();/ / 显示购物车中的信息/ / 信息表名/ 控件名/ 会员编号public void SCIBind(string P_Str_srcTable, GridView gvName, int P_Int_MemberID) SqlConnection myConn = dbObj.GetConnection();SqlCommand myCmd = new SqlCommand(Pr_GetShopCart, myConn);myCmd.CommandType = CommandType.StoredProcedure;/添加参数SqlParameter MemberID = new SqlParameter(MemberID, SqlDbType.BigInt, 8);MemberID.Value = P_Int_MemberID;myCmd.Parameters.Add(MemberID);/执行过程myConn.Open();try myCmd.ExecuteNonQuery();catch (Exception ex) throw (ex);finally myCmd.Dispose();myConn.Close();SqlDataAdapter da = new SqlDataAdapter(myCmd);DataSet ds = new DataSet();da.Fill(ds, P_Str_srcTable);gvName.DataSource = ds.TablesP_Str_srcTable.DefaultView;gvName.DataBind();/ / 返回合计总数的Ds/ / 信息表名/ 员工编号/ 返回合计总数的Dspublic DataSet ReturnTotalDs(int P_Int_MemberID, string P_Str_srcTable) SqlConnection myConn = dbObj.GetConnection();SqlCommand myCmd = new SqlCommand(Pr_TotalInfo, myConn);myCmd.CommandType = CommandType.StoredProcedure;/添加参数SqlParameter MemberID = new SqlParameter(MemberID, SqlDbType.BigInt, 8);MemberID.Value = P_Int_MemberID;myCmd.Parameters.Add(MemberID);/执行过程myConn.Open();try myCmd.ExecuteNonQuery();catch (Exception ex) throw (ex);finally myCmd.Dispose();myConn.Close();SqlDataAdapter da = new SqlDataAdapter(myCmd);DataSet ds = new DataSet();da.Fill(ds, P_Str_srcTable);return ds;购物车界面如下图所示:购物车可操作的事件为:确认更改:可以确定更改订购的数量继续购物:该事件为关闭窗口订单取消:该事件是清空购物车去收银台:该事件是用来关闭窗口并打开新窗口。.3商品查询商品显示:.订单查询415 首页商品布局新品速递:热卖商品商品分类的实现:.数据库管理端(后台)4.2.1 商品资料管理:点击页面左侧的商品信息管理键,将出现下拉菜单。菜单中包括添加大类、添加小类、添加商品和商品审查。通过这个管理模块,管理员可以添加、删除商品、商品类型,并且可以修改商品售价、商品简介、商品说明等信息。1、首先登录到后台管理系统2、依次:系统功能管理产品系统管理添加商品,点击添加商品出现如下界面完成后;即出现在“新品速递”栏目中:4.2.2 商品交易管理:点击交易信息管理键,将出现包含订单处理和发货记录查询的菜单。管理员通过这个模块可以对订单进行处理并对发货记录进行查阅或删除。订单处理:发货查询:4.2.3会员管理:4.2.4操作管理: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() = SessionValid.ToString().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(););else Response.Write(alert(您输入的用户名或密码错误,请重新输入!);location=javascript:history.go(-1););else Response.Write(alert(验证码输入有误,请重新输入!);location=javascript:history.go(-1););4.2.5 退出管理:点击管理员退出,管理员对商城的所有修改将被保存入数据库,并返回到修改成功后的前台首页。5 系统数据库的建立. 系统数据源的设置所建立的数据库文件(SuperMarket_Data.mdb)保存在文件夹market_database下,为了防止别人随意篡改数据库,我将其后缀名改为.asp来调用。.2系统数据库的详细建立 6 总结在老师和同学的帮助下,经过一个星期的紧张设计与开发,我的期末设计基于 ASP.NET的网上鞋子商城系统终于开发完成了。 通过本系统的开发使我所学的专业知识得到了综合的运用,对以前很多抽象、枯燥的理论知识加深了理解,同时也使我学会了利用结构化程序设计思想开发管理信息系统,并用模块化方法加以实现。 通过本次的系统开发,我深刻地认识到信息系统开发的每一步都是以上一

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论