《B2C电子商务系统.docx》由会员分享,可在线阅读,更多相关《B2C电子商务系统.docx(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 B2C电子商务系统目 录第1章:前言3第2章:国内外研究程度5第3章:系统分析与设计6第4章:程序编写过程12第1章:前言1.1题目意义 题目:B2C电子商务系统 意义: 随着近年来互联网在中国乃至世界的迅速发展,网上交易活动日渐频繁,经营范围不断变大,开始在现代商务活动中占据越来越重要的地位。在美国,电子商务所产生的经济效益已经超过了通信和航空工业。电子商务意味着使用计算机和Internet完全实现“足不出户”的购物流程。它有如下诸多好处:第一,客户可以在家购物,从而减少了商场客流量。第二,计算机管理严密精确,能快速准确的完成各种任务,实现商务要求的迅速响应。第三,一个管理员可以处理一个片
2、区的大量业务,管理成本大大降低。第四,可以维持最少量的库存,减少资金呆滞。第五,可以从电子交易信息中获取大量历史数据,从而指导公司的长期发展战略。1.2开发环境 开发模型: B/S 服务器平台:IIS5.0+SQL Server7.0 以上(或Access) 开发语言: ASP windows2000操作系统1.3 软件使用环境 服务器:安装有IIS5.0+SQL Server7.0 以上,最好使用PIII以上的CPU。 客户端:个人PC即可。1.4问题陈述 用户:管理员,会员 商品分类管理 购物篮设计 价格计算 会员留言及建议 提供商品图片和详情1.5 可行性研究根据实际情况,目前百姓家园网
3、的业务量不是很大,考虑到本系统的安全要求级别以及开发费用,维护费用和使用的使用系统难易程度,使用ASP作为开发语言,后台使用Access2000或SQL Server7.0 数据库最适合。从技术,经济,开发条件,社会环境来说都是可行的。同时编写程序时也考虑了程序的可扩展性,为今后网站的发展打好了基础。第2章 国内外研究程度随着Internet用户的剧增和Internet技术的不断发展,信息的经济效益直接体现在生产经营和管理活动中,每个重视信息资源的单位,都能利用信息资源的及时性、准确性,提高工作效率,取得经济效益和社会效益。此时,网上商品交易也跟着在快速发展,作为近几年才发展起来的新事物,它有
4、着自己的优点,同时也伴随着许多难点。 有人把电子商务狭隘理解成用计算机为交易媒介,在网络上实现订购、支付等交易的过程,显然,这种定义是很没科学性的。电子商务的英文全称是E-Business,而现在人们以为网上的交易就是电子商务,其实它是E-commerce,只是整个E-Business的一个小的组成部分,或者更准确的说,建立网站、进行在线交易,在电子商务的整个发展过程中只是处于比较初级的阶段电子商务从1994年提出到现在,一共经历了三个时期:萌芽期、创新期和严谨期。其中1994年-1996年是萌芽期,那时候的电子商务主要是指人们能迅速上网、浏览资料、收发电子邮件。从1997年到2000年第一季
5、度是电子商务的创新期,电子商务的主要特征是介入了企业的商务活动,可以在网上进行一定的交易。而从2000年夏天到现在,电子商务就已经进入了严谨期。他们调整自己的业务流程,从根本上把企业改造成以客户为中心的模式。从电子商务的程序构建技术来说,在不久前,这还需要非常专业的编程高手来做。它要求不厌其烦的使用具有复杂语法的语言,如Perl;或是使用某种低级的语言,如C+。但是现在微软开发的ASP技术使我们能够快速创建商业Web站点。同时,ASP脚本只由服务器解释,再由IE传送,客户不会看到ASP源文件。为了发布一个使用ASP构建的Web站点,我们需要在服务器上装有IIS(Internet信息服务)或至少
6、装有PWS(个人Web服务器)。推荐使用IIS,因为PWS不能支持大流量访问。但它作为调试工具还是可行的。第3章:系统分析与设计3.1 系统的组成系统主要由管理员管理商品,用户注册,购物交易实现过程,顾客信息反馈四个子系统组成,重点在购物的实现过程和管理员管理商品。图31 OOAD系统组成图3.2 系统的主要角色 系统主要角色 由图32可知,主要的角色有:客户,商品,购物篮,各个角色通过不同的过程联系起来 ,从而实现系统的功能。系统图图3-2 OOAD 系统的角色,过程组成图3.3 管理员管理商品实现过程如图33,管理员管理商品时,管理员从主页登陆到系统中,然后即可对所存商品进行信息修改,新商
7、品添加和删除。然后更新数据库,退出系统,完成操作。结束正确?进入主页输入名称,密码添加,修改,浏览,删除进入管理页面N数据库Y保存数据数据库图33 管理员管理商品过程流程图3.4商品交易实现过程图 34 为商品交易全过程的流程图。首先要求购物的顾客必须先注册成为会员,然后登录交易系统进行交易。当顾客确定所要购买的商品打算下订单时,为了确保交易成功,网站要求顾客填写详细的配送信息。提交信息后,网站员工就知道了客户的要求进而与客户联系完成交易。会员?正确?进入购物篮输入用户名,密码客户收到商品并付款交易结束管理员看到信息,与客户联系,确认送货填详细联系信息,提交修改?确定要买的商品的数目,并查看总
8、价选定商品名,按订购确认。点击商品名查看详情注册NY登录N数据库Y YN数据库图33 在线商品交易实现过程流程图3.5 商品交易全过程动态模型顺序图 顺序图顺序示图说明了对象间的关系,即在对象间发送和接受消息。顺序示图有两个轴,竖轴表示时间,水平轴表示一组对象,两个轴即可表示一个脚本。 购书实现过程的顺序图:客户:数据库:计算机 提交购物要求提示登录,并询问密码提供密码 送密码验证密码确认验证,进入购物区 确认验证请求查看商品信息 请求商品信息返回商品信息 返回商品信息提交订购信息 保存顾客订购信息 要求输入详细联系地址 输入详细联系地址 输入详细联系地址 保存详细地址提示交易完成 成功保存图
9、36 购物过程顺序图3.6 系统的代表角色 代表角色商品角色(Pro Role) 图3-5 OOAD 系统的商品角色图 数据库设计 此数据库共由4个表组成,Product 表用于保存商品的所有信息,Member 表用于保存注册顾客的所有信息,Basket用于保存顾客未下单的购物篮信息 ,order用于保存顾客所购买的所有的商品的信息和顾客详细的联系信息。第4章 系统实现4.1 建立数据库 本系统数据库结构如图(41)所示:图41 数据库系统的表关系图4.2 显示商品 实现:从数据库Product表中检索符合条件的商品并将需要的信息显示在页面上。 数据库连接代码:set myConn=serve
10、r.CreateObject(adodb.connection)myConn.Open dbq= & server.MapPath(bxjy.mdb) & _;driver=microsoft access driver (*.mdb);检索代码:set myRS=server.CreateObject(adodb.recordset)myRs1.openselect 字段名 from Product where” & _ “条件,myConn,1,3(注意:要使检索到的记录可增加,删除,修改,必须设好游标类型,因为默认的游标类型是“只读“的。为此,需要在程序中添加连接文件adovbs.inc
11、并使用下面的语句在请求页中使用它:)显示:(注意加粗的部分)关于图片:如何实现从数据库里调用图片呢?其实很简单。只需将图片保存到wwwroot中自己的主程序下,然后将其路径和名称输入到数据库中表的相应字段中即可。在调用时,只需从数据库中取出相应值就行了。示例:(注意加粗的部分)1 数据库中存放的值:image/WT1.jpg2 请求:img border=0 src= 商品显示页:l 主页:(index.asp)用于显示最新商品,客户在此页中可实现到网站各页面的链接。关键代码:(P_Date字段保存了产品日期)myRs1.openselect max(P_Date) from Product,
12、myConnstr1=myRs(0) set myRS1=myConn.Execute(select * from Product where P_Date like &str1&) 界面:图421:商场主页l 分类页:(?.asp)(共有六个分类页)用于显示不同类别的商品,同时实现到网站各页面的链接。关键代码:(P_Class字段保存了产品所属类别)myRs1.openselect * from Product where P_Class = 类名,myConn界面:图422:服装商场主页l 详情页:(XX.asp)当用户点击商品的编号时,XX.asp出现。用于显示该商品的详细描写和图片。关
13、键代码:( myRs(0)字段保存了商品的编号;myRs(3)字段保存了商品的详细描叙;myRs(5)字段保存了商品的图片路径。)在请求页中:a href=XX.asp?PId=在详情页中:img border=0 src= 图423 所选商品的详细描写页4.3 用户服务:用户服务包括注册,登录,修改密码,由数据库中的Member表储存信息。l 注册页:(regist.asp;)用户可通过各商场页面上的“我要注册”链接到注册页,该页用于收集用户资料,然后发送给注册处理页(regist_check.asp)进行处理。关键代码:注册页:function CheckForm(theForm)if(!
14、theForm.txtMLog.value)alert(您需要输入完整的用户名.);theForm.txtMLog.focus();return(false); return true(上叙代码实现对用户输入的有效性检查)处理页:if myRs.eof or myRs.bof then myRs.addnew myRs(0)=MLog myRs(1)=MPass myRs(2)=MEmail myRs.update response.write您已经成功的注册为百姓家园网的用户! response.write您的用户名是:+MLog+ response.write您的登录密码是:+MPass+
15、 response.write您的电子邮箱是:+MEmail+ response.write请您牢记以上资料。 response.write您现在可以登录并购物了。 else response.write对不起,+MLog+已被其他用户注册! response.write请重新注册 end if(上叙代码首先检查客户的用户名是否已在数据库中存在,如果存在,提示客户重新输入;否则,将注册资料写入数据库。) 注册界面:图431 用户注册页l 登录:login.asp该页面用于收集客户登录信息,然后移交给登录处理页(login_check.asp)核查。关键代码:登录:其代码与注册页代码差不多,不再
16、重复。处理:if myRs.bof or myRs.eof then Response.Write 没有当前您输入的用户或您输入的口令错误! Response.Write 如要重新登录,请重新登录 Response.Write 或者返回主页 else Response.Write 百姓家园购物商城欢迎您,+MLog+! Response.Write 您想:返回主页看商品 Response.Write 还是:查看购物篮 Response.Write 还是:修改会员资料 session(MLog)=MLog end if(上叙代码首先检索数据库中符合用户请求的记录,如果没有,提示用户重新登录;否则
17、,显示欢迎字样,并将用户名写入session(“MLog”)登录界面:(图432 用户登录页) l 修改密码:write.asp该页将检查session(“MLog”),如果为空(说明用户未登录),则重定向到登录页中;否则,将session(“MLog”)保存到变量Mlog中,然后让用户修改密码,并保存到数据库。关键密码:if session(MLog)= then response.redirectlogin.asp else MLog=session(MLog) end ifmyRs.openselect M_Pass from Member where M_Log like &MLog&
18、,myConn,1,3 myRs(0)=nPass myRs.update修改密码界面:图433 用户登录页4.4 购物: 购物过程由商品浏览页,商品详情页,购物篮页,订单服务页,订单确认页共同实现,其中,商品浏览页和商品详情页前面已讲,这里不再重复。l 购物篮:basket.asp当用户在商品浏览页、商品详情页中点击图片,或点击导航栏中的“我的购物篮”时该页面出现。如果用户尚未购物,则显示“您的购物篮是空的”,否则,显示客户尚未下单的购物信息。客户新放入的商品也已自动更新:如果购物篮中没有该商品,则其数量为1;否则,就将该商品的数量加1。同时,客户购物金额也自动计算并显示出来;当客户更改了商
19、品数量输入框中的数量或选中删除复选框后,再点击“更新”按纽时,商品的数量,金额都将自动更新。关键代码:在请求页中:a href=Basket.asp?PId1=在购物篮中:MLog=session(MLog) if MLog= then response.redirectlogin.asp end if (上叙代码检查客户是否登录,如果客户未登录,则 重定向到登录页中。) PId=TRIM(request(PId1) if Pid then myRs.openselect * from Basket where M_Log like &MLog& and P_Id like &PId&,myC
20、onn,1,3 if myRs.eof or myRs.bof then myRs1.openselect * from Product where P_Id like &PId&,myConn,1,3 PName=myRs1(1) PPrice=myRs1(4) myRs.addnew myRs(0)=MLog myRs(1)=PId myRs(2)=PName myRs(3)=PPrice num1=1 myRs(4)=num1 myRs.update else sql1=update Basket set P_Total=P_Total+1 where M_Log like &MLog&
21、 and P_Id like &PId& myConn.execute sql1 end if end if (上叙代码首先检索数据库中客户的basket表,如果该用户的该商品已存在,则将其数量加1,否则,添加一条新记录,其商品名称、价格从表Product中获得,其商品数量为1) if request(updateQ) then sql2=select P_Id,P_Total from Basket where M_Log like &MLog& myRs.open sql2 while not myRs.eof newQ=trim(request(t & myRs(P_Id) delPro
22、=trim(request(ch & myRs(P_Id) if newQ= or newQ=0 or delPro then myRs.delete else if isnumeric(newQ) then myRs(P_Total)=newQ end if end if myRs.movenext wend end if (上叙代码在客户点击了“更新”按纽后执行。如果数量输入框中的数量为0或为空,或者删除复选框被选中,则该商品被清除;否则,如果输入框中有数字,则更新该商品数量。) total=0 do while not myRs.eof total=total+(myRs(3)*myRs
23、(4)td¥ (变量total用于保存商品总金额) 购物篮界面:图441 购物篮页l 订单服务页:order.asp该页用于收集客户的配送信息,然后提交给订单确认页处理。其代码简单,用户注册页差不多,这里不多叙了。订单服务页界面: l 订单确认页:order_check.asp该页首先检查客户资料的填写情况,如果不符合要求,则提示客户重新输入;否则,根据客户的资料给出相应信息,并将该客户的该笔交易信息保存到Order表中,然后从Basket表中删除这些信息。关键代码: sname=request.form(txtName) sadd=request.form(txtAdd)stel=reque
24、st.form(txtTel) sfs=request.form(selFS)if not isnumeric(stel) then response.write电话要用数字输入,请重新输入电话. else sql=delete from Basket where M_Log like &MLog& myConn.execute sql select case sfs casexk response.write感谢您惠顾百姓家园网上商城! response.write我们将在24小时内将您需要的商品 response.write送到:+sadd+. response.write并交给:+sname+查收. casehk response.write感谢您惠顾百姓家园网上商城! response.write请记住我们的帐号:IS-7788998 response.write我们将在收到汇款24小时内将您需要的商品 response.write送到:+sadd+. response.write并交给:+sname+查收. end select end if