1、暨南大学教育学院学 生 毕 业 论 文题 目 : 电子商务网站的设计与实现电脑商城毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求
2、提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作
3、者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:日期: 年 月 日导师签名: 日期: 年 月 日诚 信 声 明我声明,所呈交的毕业论文是本人在老师指导下进行的研究工作及取得的研究成果。据我查证,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得其他教育机构的学位或证书而使用过的材料。我承诺,论文中的所有内容均真实、
4、可信。毕业论文作者签名: 林习深 签名日期:2011年 10月 10 日摘要内容摘要:本课题主要基于电子商务的基本原理,运用PHP开发技术搭建一个动态的网上商城的电子商务网站。它是在Windows系统环境下,以Mysql数据库开发平台,Apache网络信息服务器,采用PHP(Hypertext Preprocessor)技术开发的网上购物系统。本系统分为前台与后台两部分组成,前台主要针对消费者,主要包括商品展示、会员注册、购物车管理、商品收藏管理、订单管理等功能模块;后台由管理员使用,主要包括商品管理、进货管理、订单管理、系统管理等功能模块。通过这些功能的实现,给商家提供一个动态、交互式、具有
5、商品提供、系统管理等功能的电子商务平台。关键字:电子商务,网络购物,数据库开发,PHP开发技术 Abstract : This issue is mainly based on the keystone of e-commerce, using PHP development technologies which build a dynamic e-commerce web site. It is the online shopping system, in the Windows system environment,based on the Mysql database developme
6、nt and Apache Internet Information Server by the PHP development technologies. The system is divided into two parts :front and back. Front part is for the consumers,mainly including product display, member registration, shopping cart management, product collection management, order management module
7、s,etc; back part is used by the administrator, including merchandise management, purchase management, order management, system management,etc. The implementation of these functions provides a dynamic and interactive e-commerce platform with the functions of providing products and system management.K
8、ey words: e-commerce; online shopping; database development;PHP 目 录第一章 绪论11.1 电子商务概述11.2 Web服务器平台与Web平台的动态设计技术11.3Web平台系统的开发方法1第二章 系统分析22.1 开发背景与开发意义22.1.1 开发背景22.1.2 系统开发的意义22.2 可行性分析22.2.1 技术可行性分析22.2.2 操作可行性分析32.2.3 经济可行性分析32.3 需求分析32.3.1 初步调查32.3.2 用户需求分析32.3.3 购物流程图42.3.4 数据流程图5第三章 概要设计83.1 总体方
9、案设计83.1.1 系统目标83.1.2 划分子系统83.1.3 系统结构总体设计83.1.4 系统运行环境要求93.2 数据库设计103.2.1 数据库概念结构设计10第四章 详细设计164.1 前台设计164.1.1前台总框架164.1.2 用户管理模块184.1.3 商品浏览194.1.4 购物车模块204.2 后台部分234.2.1 后台总体框架234.2.2 管理员登录244.2.3 订单管理254.2.4 商品管理254.2.5 系统管理27第五章 系统测试29第六章 总结29参考文献30VI第一章 绪论1.1 电子商务概述电子商务是伴随着信息经济的高速发展而产生的一个较新的概念,
10、是一种新型的商业运营模式。可以概括为:电子商务Web(服务器)IT(信息技术)+企业业务。发展电子商务是不可阻挡的趋势,已逐渐成为企业、商家们不可或缺的营销手段。本系统属于典型的企业与消费者之间 (B2C)类型的电子商务系统。1.2 Web服务器平台与Web平台的动态设计技术目前流行三种最常用的Web服务器平台是:基于Apache HTTP Server的服务器平台、基于网景的NES的服务器平台、基于微软的IIS的服务器平台。Apache HTTP Server可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API
11、扩展,将Perl/Python等解释器编译到服务器中。而且PHP与Apache HTTP Server搭配,是业界公认的黄金组合,因此本系统便是采用Apache HTTP Server服务器平台。当前比较流行的Web开发技术有: ASP, PHP,JSP,ASP.NET等。ASP在国内比较流行,但是由于ASP的跨平台能力差,而且安全性不好;JSP在国际上比较流行,适合开发一些企业级电子商务系统,但由于其在技术上和成本上要求都比较高,现在在国内运用的还比较少;ASP.NET是Microsoft .NET Framework中的一组用于构建Web应用程序和XML Web Service的技术平台,
12、有一定的复杂性;而PHP 是秉承Linux 的GNU 风格,借助与源码公开,使他迅速成为世界上目前应用最为广泛的站点制作语言之一。加上它和Linux,Apache 和MySql 的紧密配合,用PHP编写的代码执行起来会更快、更稳定。用PHP编写的代码,不用改变就可以在不同的WEB服务器上、不同的操作系统下运行。相比之下,我们选择了PHP语言来开发本系统。1.3Web平台系统的开发方法在探讨电子商务的基本原理以及WEB相关开发技术的基础上,我们以软件工程方法完成了网上商城系统的开发。开发过程中所做的工作包括:整个系统的需求分析、系统设计和所有模块的具体实现、系统测试等。第二章 系统分析2.1 开
13、发背景与开发意义2.1.1 开发背景21世纪的今天,网络在人们生活中已经日益盛行,越来越多人已经离不开网络。人们已经不再满足于了解最新信息、查找资料等一些传统的网络使用方式,而是过渡到娱乐、购物等新兴的网民生活。网上购物,成了当今广大群众的时尚。而商家,也逐渐重视起网络的作用,充分利用起网络的低成本、高效性来宣传企业形象和销售商品。因此,为了方便广大群众,满足商家的需求,我们专门构建网上商城系统。2.1.2 系统开发的意义长期以来,大部分的销售活动,都是面对面的销售,如:店铺销售、广交会、上门推销等。这些销售活动,都会受到地域、时间、环境等方面的影响,从而给企业、公司等的销售管理带来极大的不便
14、。而且信息的人工管理,也存在诸多缺点。而网上商城,正好能全面解决这样的问题。产品生产-销售-客户订单管理系统软件为企业、公司等的销售管理带来了极大的方便。产品生产-销售-客户订单管理系统能够为用户提供可靠的信息储存和快捷的信息处理手段。作为计算机应用的一部分,使用计算机对企业、公司的产品销售信息进行管理,具有手工管理所无法比拟的优点。因此,开发这样一套管理系统成为很有必要的事情,它能够具体化、合理化的管理单位的销售信息情况,用结构化的思维方式去了解计算机的工作原理。2.2 可行性分析2.2.1 技术可行性分析本系统采用PHP+Mysql+Apache进行开发,其中前台用HTML嵌入PHP进行页
15、面开发和管理用户界面,提示信息完善,界面友好有亲和力;后台采用Mysql数据库开发和管理数据库,部分关键内容采用事务处理机制,具有很强的错误处理能力。本系统的开发环境使用现在特别流行的开源Apache服务器,使用方便、运行稳定、安全可靠。PHP+Mysql+Apache这个国际公认的网站开发黄金组合,在电子商务系统开发上,得到广泛的应用。如易趣网、百度有啊、ecshop等大型电子商务网站。综上所述,本系统在技术方面是可行的。2.2.2 操作可行性分析本系统采用B/S架构,对销售信息进行网上管理,操作简单易懂,对用户来说不需要高深的计算机专业知识,只要管理员能够懂得使用网络,就可以对商城进行使用
16、和维护。2.2.3 经济可行性分析由于本系统属于模拟的网上商城系统,整个系统并不算太大,因此开发成本不算太高。整个开发过程由两个人参与,只需要两台PC机和上述的各种软件,就可以实现全部的开发任务。由于PC机是我们各自原有的,而且无需专门升级硬件;而各种软件,又是能够在网上免费下载的,因此,整个开发成本可以说是非常的低廉,这也为我们以后进一步完善网站提供了非常大的方便。在使用成本上,用户只需要拥有一台能够连接到国际互联网上的计算机,通过注册就可以在世界的任何一个角落使用网站的全部功能和服务。而且对计算机的硬件的需求也不是很高,软件方面也没有特殊的需求,易于广大用的访问与使用。因此,从经济可行性分
17、析来看,这个网站体现了经济实惠,但是功能强大的特点。2.3 需求分析2.3.1 初步调查本次调查主要是由我们两个同学一起通过亲身体验现在各大 B2C 网站的购物流程,如卓越网、百度有啊、淘宝网、京东商城等等,熟悉其实现购物的方式,了解其管理的运作方式和管理业务流程,分析现在 B2C 网上商城的基本运行情况和不足并探讨其需求。同时,参考了相关网站的调查分析报告等。2.3.2 用户需求分析随着互联网的高速发展,Web应用技术也得到了迅速提高。电子商务平台便是基于这些互联技术发展起来的。而基于 B/S体系结构的网上购物系统正是电子商务的典型,系统简单却功能强大。由于客户端服务器(C/S)应用程序可维
18、护性差,而且对客户端计算机要求功能必须相当强大。为了解决这个缺点,浏览器服务器(B/S)应用程序应运而生。客户端只要求安装有浏览器,就可以与服务器连接,运行整个应用程序。与此同时,由于服务端与客户端分离,应用程序的版本不管如何更新,都只会在服务器端进行,这样客户端可以节省大量资源和时间。近年来,B/S结构越来越受到企业和公司等的喜爱和重用,选择B/S结构是当前电子商务系统开发的明智之举,能充分适应市场的需求。本系统便是采用B/S结构进行开发的。2.3.3 购物流程图,如图2-1所示图2-1 购物流程图2.3.4 数据流图由于原始的数据流程图存在操作的重复性和流程的不合理性,经过我们两个人的讨论
19、,再根据网上商城系统的购物流程,我们采用从总体到局部、逐步细化的办法,绘制出如下的数据流图:第一层:图2-2网上商城顶层数据流图第二层:P0图2-3网上商城第二层数据流图第三层:P1P2.1P2.2P2.3图2-4网上商城第三层用户管理数据流图P3P3.1图2-4网上商城第三层购物车管理数据流图P2P1.1P1.2图2-4网上商城第三层个人账户管理数据流图P4P3.1P3.2图2-4网上商城第三层订单管理数据流图第三章 设计概要3.1 总体方案设计3.1.1 系统目标(1)提高公司企业用户的经营管理效率,减少管理工作上的重复操作等。 (2)简化操作过程,提高资源的共享能力,增进查询速度。 3.
20、1.2 划分子系统此基于电子商务理论与PHP技术的网上商城购物系统,分前台功能和后台管理功能: (1)前台部分由用户使用,主要包括用户管理(用户登录、注册),商品浏览、购物车管理,个人账户管理。 (2)后台部分由管理员使用,主要包括管理员身份验证,商品管理,订单管理,会员管理,系统管理。3.1.3 系统结构总体设计,如图3-1所示图 3-1系统功能结构图3.1.4 系统运行环境要求(1)硬件环境要求: 1 GHz以上处理器。 Microsft Windows 支持的VGA 或分辨率更高的监视器。 512MB内存以上。 (2)软件环境要求:本系统是在Microsft Windows XP平台下开
21、发的,所采用的开发语言是PHP,后台采用了MySQL Server 5.0数据库,服务器用Apache。这样的黄金组合,大大的提高了数据处理的速度。 操作系统:Windows XP 系列 数据库:MySQL5.0 (3)语言种类:简体中文版 (4)显示参数:分辨率:1024768;色彩:256 色以上3.2 数据库设计 3.2.1 数据库概念结构设计 (1) 系统主要功能模块E-R 图,如图3-3所示mnm用户送货方式发货商品订购商品名称商品ID商品价格用户ID用户名密码n n n1n n管理员短信息公告发布密码用户名标题时间内容内容发送1 图3-3 实体和实体之间的关系E-R图注:实体集的属
22、性已经部分省略(2)部分相关数据表1表3-2管理员信息表(olm_admin)字段名称代码数据类型是否为空管理员ididsmallint(5)not null管理员名称usernamevarchar(60)not null管理员emailemailvarchar(60)not null管理员密码passwordvarchar(255)not null注册时间add_timevarchar(15)not null最新登录时间last_loginvarchar(20)not null最新登录iplast_ipvarchar(11)not null表3-3商品品牌信息表(olm_ brand)字段名
23、称代码数据类型是否为空品牌ididint(7) not null品牌名称namevarchar(50)not null品牌logologovarchar(80)not null备注notestextnot null链接路径urlvarchar(255)not null顺序sorttinyint(3) not null是否显示is_showtinyint(1) not null表3-4购物车信息表(olm_cart)字段名称代码数据类型是否为空购物车ididmediumint(8) not null用户登录idlogin_idint(11) not null用户session idsession
24、_idvarchar(32)not null商品idgoods_idmediumint(8) not null商品编号goods_snint(11) not null商品名称goods_namevarchar(120)not null单件运费freightdecimal(10,0)not null加件运费addfreightdecimal(10,0)not null商品质量goods_weightdecimal(10,0) not null市场价格market_pricedecimal(10,2)not null商城价格mall_pricedecimal(10,2)not null商品数量go
25、ods_numsmallint(5) not null表3-5收藏夹信息表(olm_collect_goods)字段名称代码数据类型是否为空收藏夹ididmediumint(8) not null用户登录idlogin_idmediumint(8) not null商品idgoods_idmediumint(8) not null添加时间add_timedatetimenot null表3-7商品信息表(olm_goods)字段名称代码数据类型是否为空商品ididmediumint(10) not null编号goods_snint(10)not null名称goods_namevarchar
26、(120)not null商品信息标题goods_titlevarchar(300)not null商品类别idtype_idsmallint(5) not null商品品牌idbrand_idint(7) not null商品分类idcat_idsmallint(7) not null库存goods_numint(11) not null库存警告数量warn_numsmallint(3) not null已售数量sold_numint(11) not null商品质量goods_weightdecimal(10,3) not null商品单位unitvarchar(10)not null进货
27、价purchase_pricedecimal(10,2) not null市场价market_pricedecimal(10,2) not null商城价mall_pricedecimal(10,2) not null活动价格promote_pricedecimal(10,2) not null活动开始时间promote_start_datedatetimenot null活动结束时间promote_end_datedatetimenot null单件运费freightdecimal(10,2) not null加件运费addfreightdecimal(10,2) not null图片名称i
28、mg_namevarchar(100)not null小图路径small_imgvarchar(255)not null大图路径big_imgvarchar(255)not null原图路径original_imgvarchar(255)not null是否上架is_on_saletinyint(1) not null添加时间add_timedatetimenot null更新时间up_datedatetimenot null排序sortsmallint(4) not null精品推荐is_besttinyint(1) not null新品上架is_newtinyint(1) not null
29、热门商品is_hottinyint(1) not null特价商品is_specialtinyint(1) not null备注noteslongtextnot null表3-8商品分类信息表(olm_goods_cat)字段名称代码数据类型是否为空分类ididsmallint(5) not null分类名称namevarchar(50)not null类型idtype_idsmallint(5) not null父类idparent_idsmallint(5) not null备注notesvarchar(300)not null顺序sortsmallint(4) not null是否显示导
30、航in_navtinyint(1)是否显示is_showtinyint(1) not null表3-9商品类型信息表(olm_goods_type)字段名称代码数据类型是否为空类型ididsmallint(5) not null类型名称namevarchar(50)not null是否激活enabledtinyint(1) not null表3-10订单信息表(olm_order)字段名称代码数据类型是否为空订单ididint(11) not null用户登录idlogin_idint(11) not null收件人地址idaddress_idint(11)not null付款方式paymen
31、tvarchar(50)not null配送方式shippingvarchar(50)not null总价格totalint(11) not null下单时间timedatetimenot null表3-11订单动作信息表(olm_order_action)字段名称代码数据类型是否为空订单活动ididmediumint(8) not null订单idorder_idmediumint(8) not null支付状态pay_statustinyint(1) not null配送状态shipping_statustinyint(1) not null订单完成状态order_statustinyin
32、t(1) not null登录时间log_timedatetimenot null备注notesvarchar(255)not null表3-12订单商品信息表olm_order_goods)字段名称代码数据类型是否为空订单商品ididint(11) not null订单idorder_idint(11)not null商品idgoods_idint(11)not null商品名称goods_namevarchar(300)not null商品价格goods_pricedecimal(11,0)not null商品数量goods_numint(7)not null商品质量goods_weigh
33、tdecimal(11,0)not null表3-15用户登录信息表(olm_user_login)字段名称代码数据类型是否为空用户登录idlogin_idint(10) not null用户登录名称login_namevarchar(30)not null用户emaillogin_emailvarchar(100)not null密码login_pwdvarchar(32)not null登录时间login_timedatetimenot null激活状态login_is_activesmallint(1) not null第四章 详细设计4.1 前台设计4.1.1前台总框架网站前台部分主要
34、提供给用户使用,是系统对外的窗口。主要包括用户注册、登录,商品浏览,购物车管理,个人账户管理等几个部分,如图4-1所示。(1) 模块功能介绍 用户管理:注册新用户、登录、修改用户个人资料。 商品浏览:在商品的显示介绍页面,可以收藏商品或者加入购物车。 购物车 :添加产品到购物车、购物车信息修改、下订单。订单模块:查询个人订单列表、查询某笔订单的详细信息。个人账户:订单查询,对收藏夹、地址的管理。(2) 前台文件构架 图4-1前台文件结构图(3) 前台网站运行结果,如图4-2所示(4)图4-2购物网站首页4.1.2 用户管理模块 (1)新用户注册 要购买商品,需要先注册成为用户,如图4-3所示:
35、图4-3 注册新用户部分关键代码如下3:if($_POSTreg)if($_POSTlogin_name=|$_POSTlogin_email=)warn(用户名或Email不能为空。,register.php);elseif($_POSTlogin_pwd=|$_POSTchecked_pwd=)warn(密码或确认密码不能为空。,register.php);if($_POSTlogin_pwd!=$_POSTchecked_pwd)warn(密码与确认密码不相同。,register.php);if(!$_POSTlicense)warn(请预读并接受用户协议。,register.php);
36、$datalogin_name= $_POSTlogin_name;$datalogin_email= $_POSTlogin_email;$datalogin_pwd = $_POSTlogin_pwd;$info = $user-insertData($name,$data);if($info!=false)warn(会员注册成功!,member.php);$_SESSIONlogin_name=$_POSTlogin_name;else warn(会员注册失败!,register.php); (2)用户登录 用户登录页面主要用来接收用户输入的用户名和密码,并更新用户在网站中的状态信息。会
37、员登录窗口的运行结果,如图4-4所示。图4-4 用户登录if($_POSTlog)if($_POSTusername=|$_POSTpwd=)warn(用户名或密码不能为空。,login.php);else$login_name =$_POSTusername;$login_pwd =$_POSTpwd; $where=where login_name=$login_name and login_pwd=$login_pwd;$info=$user-getList($name,$where);if($info0login_name=) &( $info0login_pwd)=)warn(用户名
38、或密码有误。,login.php); else$_SESSIONlogin_id =$info0login_id;$_SESSIONlogin_name =$info0login_name;warn(登录成功。,$url); 4.1.3 商品浏览 用户在商品显示页面(goods.php)对具体商品进行详细了解,并在商品显示页面对商品进行收藏或者加入购物车,已注册的会员还可以对商品进行咨询或者评论等,如图4-5所示。图4-5 商品显示页面关键部分代码如下: $goods = new Goods(); $id= $_GETid;/获取传递过来的参数商品id$tbname = $goods-_goo
39、ds;$info = $goods-getInfo($tbname,$id);4.1.4 购物车模块 用户在浏览商品时,如果对想购买的商品,可以点击“收藏”把商品加入收藏夹;也可以点击“购买”把商品放入购物车,此时页面便自动跳转到购物车列表,如图4-6,4-7所示:图4-6收藏夹图4-7购物车部分代码如下:$where = WHERE session_id=.$_SESSIONsession_id. AND goods_id=$goods_id;$oldinfo = $cart-getList($cartname,$where); if($oldinfo0id=)/获取商品信息$datalog
40、in_id = 0;$datagoods_id = $infoid;(省略部分代码)$datagoods_num = 1;$info=$cart-insertData($cartname,$data);if($info!=false) $cart_id=$cart-getMaxId($cartname); $cart_id=$cart_id0; urlto(cart.php?cart_id=$cart_id);else$datagoods_num = $oldinfo0goods_num+1;$info = $cart-updateData($cartname,$oldinfo0id,$data); urlto(cart.php?cart_id=$cart_id); (3)生成订单 如果用户对商品满意,并修改好购物车的商品数量后点击“去结算”,便跳转到订单信息确认与填写页面,运行效果如图4-8所示:图4-8填写订单确认信息(4)订单提交成功页面,如图4-9所示:图4-9订单提交成功4.2 后台部分