已阅读5页,还剩26页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
盐 城 师 范 学 院毕业设计微信校园之二手交易市场 学生姓名 学 院 信息工程学院 专 业 软件工程 班 级 学 号 指导教师 2016年4月15日 盐城师范学院毕业设计微信校园之二手交易市场摘 要目前是智能手机飞速发展的时代,手机已经成为人们生活当中必不可少的工具。越来越多的手机软件也被开发出来,而微信就是其中一款被越来越多人使用的聊天工具,微信也越来越受欢迎。本文设计实现了一个校园微信的二手交易系统。本文首先阐述了系统的研究背景和现状。其次,对微信商城进行了了解和调查,从经济、技术和操作三个方面的可行性对系统进行了分析,确定了系统的功能需求。系统使用PHP语言进行编写,数据库方面选用MySQL数据库,为了降低耦合度系统选用MVC设计,针对移动端进行页面开发,前台为移动客户端,PC端为后台管理,对微信校园二手交易系统的前台和后台管理进行了实现。最后采用黑盒测试的方法对系统进行测试,排除一些故障。【关键词】二手商城;B/S;PHP;MVC;微信平台全套设计加扣 3012250582Design and implementation of micro-channel Used mallAbstractAt present is the era of rapid development of smart phones, mobile phones in the moment is already a tool for the prevalence of abnormal. A variety of mobile phone software has been developed, and WeChat is one of the more popular and popular chat tool, more and more users of WeChat.In this paper, we design and implement a secondary trading system based on the WeChat platform. In this paper, the research background and the current situation of the system are described. Secondly, the WeChat mall to understand and research, from the economic, technical and operational feasibility of the three aspects of the system analysis, determine the functional requirements of the system. Use PHP language, the database selected MySQL database, in order to use reduce the coupling system of MVC design, for the mobile terminal to page development, front for mobile client, PC as the backstage management, to realize the micro channel based on platform of the campus second-hand transaction system the onstage and the backstage management. Finally, the black box testing method is used to test the system and to eliminate some faults. Keywords Secondhand markets; B / S; PHP; MySQL; Micro-channel platform 盐城师范学院毕业设计目 录1 绪论11.1 课题研究背景及意义11.2 课题研究现状12 相关技术简介22.1 PHP的介绍22.4 MVC模式23 系统分析33.1 需求分析33.1.1 系统设计目标33.1.2 系统可行性分析33.2 系统功能需求43.3 数据库设计53.3.1 数据库设计思路53.3.2 数据库概念模型63.3.3 数据表字段设计74 系统设计与实现84.1 手机端功能实现84.1.1登录系统功能实现84.1.2商品列表功能实现94.1.3 购物车功能实现124.2 PC端功能实现134.2.1登录功能实现134.2.2类别管理功能实现144.2.3商铺管理功能实现154.2.4商品管理功能实现154.2.5用户管理管理功能实现174.3如何连接到微信端185 系统测试205.1 测试原则205.2 测试项目测试用例215.3测试结论22总 结24参考文献25致 谢26盐城师范学院毕业设计1 绪论1.1 课题研究背景及意义21世纪是信息化的时代,信息技术不断影响和改善着人们的生活,互联网的飞速发展推动着社会不断进步。人们在享受着信息化带来便利的同时,工作效率也逐渐提高,生活水平也日益改善。日前,随着微信浪潮的推进,越来越多的互联网公司转战移动领域,对于小型企业来说,开发一个移动网页由于宣传力度等因素并不是很好,所以越来越多的开发者愿意借助微信平台进行开发,微信用户日益剧增,信息传播速度快,可以快速提升企业的知名度,能迅速地将自己的产品展现出去,更快地获取利益。微信建群的便利,可以使商品快速地在不同的人群中传播开来,企业可以轻松地监理自己的品牌专区,最大限度的宣传企业形象,极大程度地促进了商品的销售。1.2 课题研究现状互联网时代的来临,电商网站的兴起,越来越多的人更热衷于在网上进行购物。 2011年1月,腾讯公司发布微信。因其操作简单、交互性强,并借助红包、摇一摇等娱乐手段,迅速占领移动通讯市场。而2012年4月推出的“WeChat”产品则锁定国际市场,凭借其高效性、易用性等特点仅两年多时间,微信与“WeChat”的全球注册账户总数已超过4亿1。微信也属于APP移动应用软件中的一种,开发者借助微信开发平台预留接口,通过配置服务器地址,将用户请求转发到服务器应用上,调用相应的处理程序进行处理,结果将返回到用户微信上。其次,整个系统是借助的微信平台,而微信在IOS、Android、WindowsPhone上都可以运行,因此开发者不用考虑以往APP的兼容性问题,只需考虑页面在不同手机分辨率下的适应性即可。这对于经费少的商城系统来说,微信开发成本低、性价比高,无疑是推广商城的服务业务的最佳选择2。微信具有极强的互动性,尤其在自动回复方面,更加的方便和快捷。在微信开发后,对于顾客的咨询和需求,有一定的互动性,更加的亲近民众。2 相关技术简介2.1 PHP的介绍 PHP 是一种 HTML 内嵌式的语言,简单易学,只需要有一点基础,能轻松地上手完成编写。PHP 拥有其他语言的优点,自身语法也有很多创新。与其他语言相比能更快速地执行动态网页,可以降低成本,且有数据库的大力支持,更能轻松便捷的编写网页。2.2 MVC模式 MVC模式(三层架构模式)(Model-View-Controller)是将系统进行简化的重要设计模式,使软件系统由Model(模型)、View(视图)和Controller(控制器)三个基本部分组成。 MVC模式是将程序进行动态设计的模式,以后对系统进行升级,模块增加、代码复用等有着重大意义。此外,通过分层将代码简化,使代码模块更加清晰明朗。软件系统使自身基本部分分离又使各个部位具有相应的功能。控制器:接受用户请求,调用相对应的模块。视图:进行图形界面设计。模型:设计编写程序的功能,设计数据库。如图2.1:图2-1 MVC三层架构示意图3 系统分析3.1 需求分析3.1.1 系统设计目标微信校园二手交易市场的具体开发目标为:(1)使服务更加方便快捷。用户可以用手机登录微信,提交信息。(2)便于维护和管理。(3)用户可以自己在电脑上登陆,查看更改自己的一些信息。(4)管理员能够在后台管理和维护所有信息。(5)具有较高的安全性。3.1.2 系统可行性分析技术可行性分析系统主要是WEB应用,因此在开发技术选择上选用成熟的开发框架,系统采用面向对象编程思想,将MYSQL数据库作为数据存储容器,因为其免费、开源等特性,深受开发者喜爱。同时采用Navicat for MySQL对数据库进行可视化操作,避免了繁琐的控制台命令操作,使建表等操作更加方便,同时使用wamp进行集成环境搭建,同时采用微信公众平台预留接口进行相关操作,微信公众平台有详细的开发者文档,因此该项目在技术上是可行的。操作可行性分析整个系统中,用户不需要通过客户端进行登录,只需要通过浏览器就可以对本系统进行相关业务的处理和操作,所有操作流程都具有提示,使用户都可以自主进行操作。经济可行性分析由于本系统是微信校园二手交易系统,只需要利用微信平台就可以进行相关功能的实现,因此不需要太多的开发成本。PC机是各自原有的,而且无需专门升级硬件;微信客户端是对外免费开放下载的,在使用上,用户只需要一台连接网络电脑即可对系统进行访问使用。而且不需要计算机有很高的配置,对于软硬件都没有太多的要求,绝大多数用户都能进行访问与使用此系统。因此,从经济可行性分析来看,有着较低的开发成本,操作简单,有较完善的功能。3.2 系统功能需求微信校园二手交易市场包括手机端和PC端两部分功能,手机端实现了登录注册、商品列表、搜索、选择分类、首页、我的订单、优惠劵、购物车、个人信息、功能菜单等功能。PC端可以对商品、类别、商铺、订单、用户、优惠劵进行管理。如图3-1所示:图3-1 微信校园二手交易系统功能结构图(1)登录注册模块用户在手机端通过微信关注公众号,进入公众号,用户可以进行注册,有账号的用户可以进行登录,注册时需要填写相应的个人信息,一些重要的信息输入不能为空。要求用户输入的账号不能与系统已存在的用户名重复。所有输入不能为空。(2)商品列表模块用户进入系统后主页就可以查看商品,如果对某件商品感兴趣可以点击具体的商品对商品进行详细的了解。也可以进行搜索或选取对应的商品属性来寻找想要的商品。(3)购物车模块为满足用户多商品的选择,系统设计购物车功能,在该功能上,用户对满意的商品可以选择添加到购物车。用户登录系统后,如需购买多种商品,不需要付款多次,只需要将喜欢的商品添加到购物车,系统不会立即进行结算,等到用户不在添加商品时,系统将会对购物车中所有商品进行结算,生成订单并提示用户总价格。(4)商品管理模块商品管理模块属于卖家功能,卖家出售闲置物品时,需要对商品信息进行录入,以供买家查看。卖家需要录入相关商品的商品名称、商品价格、商品类别等,这部分录入的越详细,将会更好的帮助买家进行商品甄选。(5)订单管理模块卖家可以对订单进行管理,该模块用于帮助买家进行统计管理商品,同时,卖家可以根据订单确定商品销售情况,进行配货。(6) 微信工具模块该模块用于管理员进行系统管理,管理员通过相关工具进行用户统计,确定消费对象,提供有针对性的提供服务,利用微信进行消息推送等。3.3 数据库设计3.3.1 数据库设计思路在系统数据库设计过程中,根据需求分析进行实体类的确定,根据业务处理过程中需要用到的数据进行实体类属性的确定,最终确定了相关实体及其联系,系统数据库包含实体为:管理员、用户、商铺、商品、订单等。对已经确定是实体进行分析,考虑实体之间的联系以及联系之间的对应关系,例如买家购买商品时包含订单关系,订单中包含买家用户和购买的商品信息等信息,同时根据数据库约束确定主外键关系,并确定实体间的联系。并且需要考虑所设计的数据库是否符合第三范式。达到提高数据库存储效率,表与表之间的关系采用外键进行约束,避免出现数据冗余的目的。3.3.2 数据库概念模型虽然NoSQL越来越流行,但它的优势在大数据方面,考虑到本系统的规模,所以仍然选用技术成熟的关系型数据库MySQL。系统采用面向对象的编程思想,因此在数据库设计上将每条记录都考虑为对象,即万事万物皆为对象,数据库存储的每条记录都可以理解为一个对象,因此对系统良好抽象设计显然是必要的。本系统将会在数据库操作上选用可视化工具Navicat For MySQL,在对数据库建表过程中更加直观方便。系统E-R图,如图3-2所示:图3-2系统实体E-R图根据前期确定的需求进行分析设计,系统总结归纳出以下几个模型 图3-3系统用户实体图图3-4 系统订单实体图管理员用例图如下:图3-5 管理员用例图3.3.3表结构设计由于篇幅的限制,本文只列举了部分表单的设计,详细信息请参阅数据库文件。(1)商品分类表。表2-1 商品分类表字段类型长度主键/外键约束IDint主键非空名称Varchar40默认空价格Varchar40默认空销量Varchar40默认空操作Varchar40默认空(2)用户信息表表2-2 用户信息表字段字段类型长度主键/外键字段值约束IDint主键非空用户名Varchar40默认空电话Varchar40默认空微信IDVarchar40默认空密码Varchar40默认空操作权限Varchar60默认空4 系统设计与实现 微信校园二手交易系统包括手机端和PC端两部分功能,用户在手机端通过微信可以登录商城,进行注册、购买、查询、搜索等操作。也可以在PC端查询更改自己的信息。管理员可以在PC端对商品、店铺、分类、用户、店铺等进行管理。4.1 手机端功能实现手机端实现了登录注册、商品列表、搜索、选择分类、推荐店铺、首页、我的订单、购物车、个人信息、功能菜单等功能,这些功能主要是借助微信平台实现的。具体功能如下:4.1.1登录系统功能实现手机端登录界面如下图4-1所示: 图4-1 手机端登录界面用户注册核心代码:public function login()$u = M(User);$username = $_POSTusername;$passwd = $_POSTpasswd;$conditionusername=$username;$conditionpasswd=$passwd;$user = $u-where($condition)-find();if($user)session(username,$userusername);session(roletype,$userroletype);session(userid,$userid);session(sid,$usersid);echo json_encode($user);4.1.2商品列表功能实现商品列表模块主要显示商品信息,可以让用户选择并购买商品。商品列表功能界面效果如下图4-2所示: 图4-2 商品列表界面微信购物商城部分代码:if($msgType = event)$event = $postObj-Event;if($event = CLICK)$key = $postObj-EventKey;if($key = vk_jinru)$sendType = news;$title = 进入微信购物商城;$image = /upload/logo.jpg;$turl = /clientuser/index.html?openid=.$fromUsername;$resultStr = sprintf ( $picTpl, $fromUsername, $toUsername, $time, $sendType, $title, 微信商店欢迎你!, $image, $turl );echo $resultStr;else if($key = vk_lx)$sendType = news;$title = 我们的联系方式;$image = /upload/lianxi.png;$turl = ;$resultStr = sprintf ( $picTpl, $fromUsername, $toUsername, $time, $sendType, $title, 电话:1512312312n邮箱:, $image, $turl );echo $resultStr;else if($event = subscribe) $sendType = news; $title = 进入微信购物系统; $image = /upload/logo.jpg; $turl = /clientuser/index.html?openid=.$fromUsername; $resultStr = sprintf ( $picTpl, $fromUsername, $toUsername, $time, $sendType, $title, 直接发送商品名称可以搜索商品!, $image, $turl );/搜索商品/ echo $resultStr; else if($msgType = text)$keyword = $postObj-Content; $model = M(Good); $conditiongname=array(like,%.$keyword.%); $good = $model-where($condition)-find(); if($good) $sendType = news; $title = $goodgname. ¥:.$goodprice; $image = sae_storage_root(Public)./upload/.$goodimg; $turl = /clientuser/index.html?openid=.$fromUsername; $resultStr = sprintf ( $picTpl, $fromUsername, $toUsername, $time, $sendType, $title, $goodnote, $image, $turl ); echo $resultStr; else $sendType = news; $title = 没有找到您输入的商品,点击查看更多!; $image = /upload/logo.jpg; $turl = /clientuser/index.html?openid=.$fromUsername; $resultStr = sprintf ( $picTpl, $fromUsername, $toUsername, $time, $sendType, $title, 微信商店欢迎你!, $image, $turl ); echo $resultStr; 4.1.3 购物车功能实现购物车功能模块主要实现了用户将所选商品添加到购物车,待顾客挑选完毕后一起进行付款。购物车功能界面效果如下图4-3所示: 图4-3 购物车界面效果4.2 PC端功能实现用户可以在PC端查询自己的信息,管理员可以在PC端对商品、用户、店铺、订单、类别等信息进行管理和维护。4.2.1后台登录功能登陆的界面如下图4-4所示:图4-4 登录功能实现界面4.2.2类别管理功能管理员登陆后台后,可以对类别进行管理。可以完成更改、增加、删除等操作界面如下图4-5所示:图4-5类别管理功能实现界面部分代码: handler: function () var rows = $(#grid1).datagrid(getSelected); if (rows) var rowId = rows.id; $.messager.confirm(提示, 确定要删除吗?, function (r) if (r) deleteItem(rowId); ); else $.messager.alert(提示, 请选择一条记录进行操作); 4.2.3商铺管理功能商铺管理功能主要实现管理员对商铺信息的增删改查等功能,商铺管理功能实现界面如下图4-6所示:图4-6 商铺管理功能实现界面4.2.4商品管理功能实现管理员登陆后台,可以增加、删除商品,也可以更改商品的信息,调整价格。商品管理功能实现界面如下图4-7所示:图4-7商品管理功能实现界面部分代码: function add() /增加商品$action = $_POSTaction;$this-upload();$n = M(Good);if($action = add)$_POSTcount=0; $_POSTxiaoliang=0;if(!$n-create()exit($n-getError();$n-add();else$n-create();$n-save();echo 操作成功!;public function upload()/上传图片 if($_FILESimgsize != 0) import(.ORG.UploadFile); $config=array( allowExts=array(jpg,gif,png), savePath=./public/upload/, saveRule=time, ); $upload = new UploadFile($config); if (!$upload-upload() $this-error($upload-getErrorMsg(); else $uploadList = $upload-getUploadFileInfo(); $_POSTimg = $uploadList0savename; function deleteItem()/删除商品$n = M(Good);$ids = $_POSTid;$n-where(id in (.$ids.)-delete();4.2.5用户管理管理功能实现管理员登陆后台后,可以增加用户,也可以删除用户或对用户的信息进行更改,并可以对用户的账户进行充值。用户管理管理功能实现界面如下图4-8所示:图4-8用户管理管理功能实现界面4.3如何连接到微信端 申请测试号,将得到的appID和appsecret进行连接测试。连接完到微信端搜索相应的微信号即可进行操作。图4-9 测试号申请ID和SECRET图4-10 微信公众号页面微信菜单程序:display ();public function getAccessToken() $appid = $_REQUEST appid;$secret = $_REQUEST secret;$url = /cgi-bin/token?grant_type=client_credential&appid= . $appid . &secret= . $secret;$html = file_get_contents ( $url );echo $html;public function getMenu() $accessToken = $_REQUEST accessToken;$url = /cgi-bin/menu/get?access_token= . $accessToken;$html = file_get_contents ( $url );echo $html;public function createMenu() $menudata = $_REQUEST menudata;$accessToken = $_REQUEST accessToken;$url = /cgi-bin/menu/create?access_token= . $accessToken;echo $this-doCreateMenu ( $menudata, $url );public function doCreateMenu($menudata, $url) $ch = curl_init ();curl_setopt ( $ch, CURLOPT_URL, $url );curl_setopt ( $ch, CURLOPT_CUSTOMREQUEST, POST );curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, FALSE );curl_setopt ( $ch, CURLOPT_USERAGENT, Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0) );curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, true );$tmpInfo = curl_exec ( $ch );if (curl_errno ( $ch ) return curl_error ( $ch );curl_close ( $ch );return $tmpInfo;public function getUserInfo()$accessToken = $_REQUEST accessToken;$openid = $_REQUESTopenid;$url = /cgi-bin/user/info?access_token=.$accessToken.&openid=.$openid.&lang=zh_CN;$html = file_get_contents ( $url );echo $html;5 系统测试5.1 测试原则以下将主要介绍系统功能测试。开发的系统不可能是完美的,因此引入软件测试。测试是为了查找软件中存在的异常,做到及时修正,越早发现问题,维修的成本也会降低,若系统投入使用后出现异常,将会造成无法想像的后果,测试的目的就是为了发现错误而找出相对应的解决方法的过程。这是一个提醒测试,只是发现系统中的错误,不表现出对软件的正确性。但它可能会误导了解,这种观点可能会产生误导。结果发现,该软件测试的的目标仅仅是找出系统中的错误。由于篇幅的限制,我只列举部分测试用例。5.2 测试项目测试用例表4-1 测试用例模块测试用例描述操作过程及数据预期结果用例类别微信二手商城后台管理模块模拟正常用户输入合法数据进行登录1、 用户名输入2、 密码输入“001122”3、 点击“立即登录”按钮浏览器跳转进入后台首页功能测试输入错误的账号和存在的密码进行登录1、 用户名输入“110”2、 密码输入“001122”3、 点击“立即登录”按钮系统弹出提示“用户名或密码有误”功能测试在用户不输入任何数据的情况下测试系统是否能登录点击“登录”按钮无法登录系统功能测试输入正确的账号和错误的密码进行登录1、用户名输入2、密码输入“001120”3、点击“立即登录”按钮系统弹出提示“用户名或密码有误”功能测试后台信息管理模块删除用户功能测试1、 通过菜单进入会员管理页面2、 点击查询会员信息3、 点击第一条记录的“删除”按钮系统将会删除该条记录,并刷新该页面功能测试添加用户功能测试1、 通过菜单进入会员管理页面2、 点击添加会员按钮3、 录入相关测试样本信息系统提示添加会员成功功能测试指定用户名查询已存在的会员信息1、 进入会员管理页面2、 在查询框中输入已存在的用户名3、 点击查询按钮页面显示用户的详细信息功能测试指定用户名查询不存在的会员信息1、 进入会员管理页面2、 在查询框中输入不存在的用户名“1122334455”3、 点击查询按钮页面显示暂无该用户信息功能测试整体页面测试测试页面按钮是否可正常使用,字体是否出现乱码等通过点击按钮,测试按钮功能按钮点击事件正常响应,无乱码情况界面测试5.3测试结论通过对系统各方面进行测试,本系统已经基本满足需求,在测试过程中可能会存在部分功能点漏测的情况,但在系统使用前,还会有大量的测试,帮助找出系统中的不足,确保试运行时不会出现不可控异常。图5-1微信校园二手交易系统测试结果图5-2 微信校园二手交易系统测试结果由于实际经验不足,在系统开发过程中难免会遇到设计不合理的地方,因此,系统测试变得尤其重要,在测试过程中均采取黑盒测试,模拟用户进行正常操作和易出现的错误操作,通过收集整理进行bug的修复。最终,在系统开发完成后,出现的缺陷均在可控范围内。我将会对系统进行更加深入的功能、性能测试,确保系统正常运行。总 结经过一个学期的不断探索,毕业设计也差不多完成,这个学期我学到了很多。我这次毕业设计的任务是做一个微信校园二手交易系统,它使用PHP作为开发语言,数据库采用Mysql数据库。为了能够尽快掌握PHP,我花费了大量时间查阅相关资料,通过
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026事业单位工勤技能-云南-云南医技工四级(中级工)历年参考题库含答案详解
- 2026事业单位工勤技能-上海-上海工程测量员一级(高级技师)历年参考题库含答案详解
- 2026G锅炉特种作业-工业锅炉司炉(官方)-基础知识参考试题库历年考点答案详解
- 海运代理合同-中英文对照(范本)
- 2026年焉耆回族自治县事业单位人员招聘考试参考题库及答案解析
- 2026年宁县事业单位人员招聘笔试备考试题及答案解析
- 2026年琼结县网格员招聘笔试备考题库及答案解析
- 2026及未来5年中国电喷泵泵盖数据监测研究报告
- 2026年临西县中小学幼儿园教师招聘考试参考题库及答案解析
- 2026年沁县中小学幼儿园教师招聘笔试参考题库及答案解析
- 医院机电系统设计汇报
- 安徽省六校教育研究会2025-2026学年高一新生入学素质测试数学试题(含答案)
- 2025版学校桶装水采购及使用规范合同
- GJB1406A-2021产品质量保证大纲要求
- 商场餐饮合作抽成合同协议书
- DB15T 970-2024 居住物业管理服务规范
- 招聘消防文员试题及答案
- 安全管理人员七大职责
- 铁路劳动安全 课件 第三篇 季节性劳动安全
- JGJT46-2024《施工现场临时用电安全技术标准》条文解读
- 教学常规管理培训课件
评论
0/150
提交评论