毕业设计-商城网站设计.doc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 商城 网站 设计
- 资源描述:
-
商城网站设计 林双喜 2009级计算机网络技术 摘要:电子商务网站是在Windows系统环境下,以Mysql数据库开发平台,Apache网络信息服务器,采用PHP(Hypertext Preprocessor)技术开发的网上购物系统。本系统分为前台与后台两部分组成,前台主要针对消费者,主要包括商品展示、会员注册、购物车管理、商品收藏管理、订单管理等功能模块;后台由管理员使用,主要包括商品管理、进货管理、订单管理、系统管理等功能模块。通过这些功能的实现,给商家提供一个动态、交互式、具有商品提供、系统管理等功能的电子商务平台。 关键字:电子商务网站,PHP开发技术,数据库开发,网络购物 Abstract: E-commerce sites is in Windows system environment, with Mysql database development platform, and Apache Internet information server, using PHP (Hypertext Preprocessor) technology development of online shopping system.This system is divided into two parts of the front desk and the background, the front office mainly for consumers, mainly including commodity exhibition, the register, shopping cart management, goods collection management, order management function module; The background by the controller used, mainly including commodities management, purchase management, order management, system management function module. Through these function, to give businesses to provide a dynamic, interactive, has the goods, the function such as management system to provide e-commerce platform. Keyword:E-commerce sites;HP development technology ;Database development ;Network shopping 目录 一、 绪论 3 1.1 网站开发背景与开发意义 3 1.2 网站需求分析 3 1.3 可行性分析 4 二、 商城分析设计与开发实现 5 2.1ECSHPF版权与标志 5 2.1.1去掉头部TITLE部分 5 2.1.3去掉底部Powered by ecshop 270 5 2.1.4修改后台页面的logo图片 5 2.1.5删除右上角的“关于ECSHOP” 6 2.1.6中部 ECSHOP 管理中心, 和底部的版权所有 6 2.2将订单状态设为等待客户确认 6 2.2.1执行SQL语句 6 2.2.2添加订单备注语言包 6 2.2.3修改订单配置文件 6 2.2.4取得订单备注 7 2.2.5修改后台订单模版文件 7 2.2.6利用Ajax技术来实现立即保存 8 2.2.7删除订单时删除关联的订单备注 8 2.3商品扩展名功能开发 9 2.3.1执行SQL语句。 9 2.3.2添加商品扩展名 9 2.3.3商品信息页添加商品扩展名 9 2.3.4修改语言包 10 2.3.5修改商品添加文件 10 2.3.6修改商品显示文件 11 2.3.7在前台商品页显示商品名称扩展 11 2.3.8修改商品栏目页显示文件 11 2.3.9在分类列表页显示商品名称扩展 11 2.4多货币解方案的开发 11 2.4.1执行SQL语句 12 2.4.2修改多货币语言包 12 2.4.3修改头部模版文件 12 2.4.4加载页面session值 12 2.4.5格式化商品价格 13 2.4.6关闭站点缓存 14 2.4.7在订单列表中添加货币信息 14 2.4.8添加购物时的货币信息 14 2.4.9增加购物时的支付换算 14 2.4.10修改多货币支持的贝宝插件 15 2.4.11后台订单显示货币类型和相应额度 16 2.4.12输出货币类型和额度 16 2.5使用Ajax更新商品、购物车购买数量 16 2.5.1添加js代码,在 17 2.5.2更改以下内容 17 2.5.3使用Ajax更新购物车商品购买数量 18 2.5.4修改模版文件夹下的flow.dwt文件 18 2.5.5修改根目录下的flow.php文件 21 三、 总结 24 四、 致谢 24 五、 参考文献 24 一、 绪论 1.1 网站开发背景与开发意义 随着Internet技术的发展,联网成为人们快速获取、发布和传递信息的重要渠道,信息技术和网络技术的迅载发展和广泛应用,它对社会、经济、军事、科学和文化等领域产生越来越深刻的影响,也在正在改变着人们的工作、生活、学习和交流方式。它在人们政治、经济、生活等各个方面发挥着重要的作用,网上购物已经成为当今人们购物的潮流。因此,网上商城将会成为人们生活购物的第一选择。 利用互联网的突破地域限制的特点,为您同时服务于世界各地的用户。正因为网络无休息,一年365天、一天24小时,您得网站永远忠实地服务于您的所有用户。同时,再利用多媒体技术,可以向用户展示自己、宣传自己,树立现代形象,无形中增值了自己的资产。不同的网站的宣传效果各异,但是都大大提高了传播宣传力度。本文通过对个人主页构建的研究,着重从需求分析、网站功能实现以及网站界面的设计与美化等方面进行分析与描述,并给出具体的设计方案。因此,开发这样一套管理系统成为很有必要的事情,它能够具体化、合理化的管理单位的销售信息情况,用结构化的思维方式去了解计算机的工作原理。 1.2 网站需求分析 随着互联网的高速发展,Web应用技术也得到了迅速提高。电子商务平台便是基于这些互联技术发展起来的。而基于 B/S体系结构的网上购物系统正是电子商务的典型,系统简单却功能强大。 由于客户端-服务器(C/S)应用程序可维护性差,而且对客户端计算机要求功能必须相当强大。为了解决这个缺点,浏览器-服务器(B/S)应用程序应运而生。客户端只要求安装有浏览器,就可以与服务器连接,运行整个应用程序。与此同时,由于服务端与客户端分离,应用程序的版本不管如何更新,都只会在服务器端进行,这样客户端可以节省大量资源和时间。近年来,B/S结构越来越受到企业和公司等的喜爱和重用,选择B/S结构是当前电子商务系统开发的明智之举,能充分适应市场的需求。本系统便是采用B/S结构进行开发的。 1.3 可行性分析 本系统采用PHP+Mysql+Apache进行开发,其中前台用HTML嵌入PHP进行页面开发和管理用户界面,提示信息完善,界面友好有亲和力;后台采用Mysql数据库开发和管理数据库,部分关键内容采用事务处理机制,具有很强的错误处理能力。本系统的开发环境使用现在特别流行的开源Apache服务器,使用方便、运行稳定、安全可靠。PHP+Mysql+Apache这个国际公认的网站开发黄金组合,在电子商务系统开发上,得到广泛的应用。如易趣网、百度有啊、ecshop等大型电子商务网站。综上所述,本系统在技术方面是可行的。 本系统采用B/S架构,对销售信息进行网上管理,操作简单易懂,对用户来说不需要高深的计算机专业知识,只要管理员能够懂得使用网络,就可以对商城进行使用和维护。 由于本系统属于模拟的网上商城系统,因此开发成本不算太高。整个开发过程由两个人参与,只需要两台PC机和上述的各种软件,就可以实现全部的开发任务。由于PC机是我们各自原有的,而且无需专门升级硬件;而各种软件,又是能够在网上免费下载的,整个开发成本可以说是非常的低廉,这也为我们以后进一步完善网站提供了非常大的方便。在使用成本上,用户只需要拥有一台能够连接到国际互联网上的计算机,通过注册就可以在世界的任何一个角落使用网站的全部功能和服务。而且对计算机的硬件的需求不高,软件方面没有特殊的需求,易于广大用户访问、使用。因此,从经济可行性分析来看,这个网站体现了经济实惠,但是功能强大的特点。 二、 商城分析设计与开发实现 2.1ECSHPF版权与标志 2.1.1去掉头部TITLE部分的 ECSHOP演示站 Powered by ecshop 去除 在后台-商店设置 - 商店标题 修改 去除 打开/includes/lib_main.php 查找 $page_title = $GLOBALS['_CFG']['shop_title'] . ' - ' . 'Powered by ECShop'; 修改'Powered by ECShop' 2.2.2去掉友情链接部分 去除在后台 - 系统设置-友情链接修改 2.1.3去掉底部的Powered by ecshop 270 去除 打开 /js/common.js 将onload = function()函数除 onload = function() { var link_arr = document.getElementsByTagName(String.fromCharCode(65)); …… catch(ex){ } } 打开模板文件夹的 library/page_footer.lbi删除 {foreach from=$lang.p_tem=pv}{$pv}{/foreach}{$licensed} 2.1.4修改后台页面的logo图片 替换/admin/images/ecshop_logo.gif 替换/admin/images/login.pn 2.1.5删除右上角的“关于ECSHOP” 打开/admin/templates/top.htm 删除: <li><a href="index.php?act=about_us" target="main-frame">{$lang.about}</a></li> 2.1.6中部 ECSHOP 管理中心, 和底部的版权所有 打开 /language/zh_cn/admin/common.php 修改 $_LANG['cp_home'] = 'ECSHOP 管理中心'; 修改 $_LANG['copyright'] = '版权所有 © 2005-2009 上海商派网络科技有限公司,并保留所有权利 2.2将订单状态设为等待客户确认 2.2.1执行SQL语句 CREATE TABLE IF NOT EXISTS `ecs_order_note` ( `note_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `order_id` mediumint(8) unsigned NOT NULL, `note_value` text NOT NULL, PRIMARY KEY (`note_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; 2.2.2添加订单备注语言包 /languages/zh_cn/admin/order.php /* 订单备注*/ $_LANG['label_order_note'] = '客服人员订单备注: 2.2.3修改订单配置文件 /admin/order.php /*------------------------------------------------------ */ //-- 保存订单备注 /*------------------------------------------------------ */ elseif ($_REQUEST['act'] == 'save_ordernote') { $oid = $_REQUEST['oid']; $oval = $_REQUEST['noteVal']; $sql = "select count(note_value) from " . $ecs->table('order_note') . " where order_id = $oid"; $note_count = $db->getOne($sql); if ($note_count == 0) { $sql = "insert into " . $ecs->table('order_note') . "(order_id,note_value) values(" . $oid . ",'" . $oval . "')"; } else { $sql = "update " . $ecs->table('order_note') . " set note_value = '" . $oval . "' where order_id = " . $oid; } $db->query($sql); //echo "订单备注已保存!"; 2.2.4取得订单备注,以下代码 /* 取得能执行的操作列表 */ $operable_list = operable_list($order); $smarty->assign('operable_list', $operable_list); 后面添加 /* 取得订单备注-- */ $sql = "SELECT note_value FROM " . $ecs->table('order_note') . " WHERE order_id = '$order[order_id]'"; $order_note = $db->getOne($sql); $smarty->assign('order_note', $order_note); 2.2.5修改后台订单模版文件 /admin/templates/order_info.htm,以下代码 <tr> <td><div align="right"><strong>{$lang.label_action_note}</strong></div></td> <td colspan="5"><textarea name="action_note" cols="80" rows="3"></textarea></td> </tr> <tr> 后面添加 <tr> <td><div align="right"><strong>{$lang.label_order_note}</strong></div></td> <td colspan="5"> <textarea name="order_note" cols="80" rows="3" onblur="saveOrderNote({$smarty.request.order_id},this)">{$order_note}</textarea> </td> </tr> 2.2.6利用Ajax技术来实现立即保存,在/admin/templates/order_info.htm的JS代码下面添加 /** * 保存订单备注 */ function saveOrderNote(oid,parm){ var noteVal = parm.value; Ajax.call('order.php?is_ajax=1&act=save_ordernote&oid='+oid+'¬eVal='+noteVal,'', saveOrderResponse, 'POST', ''); } function saveOrderResponse(result){ //alert(result); } 2.2.7删除订单时删除关联的订单备注 /admin/order.php,以下代码 /* 删除订单 */ $db->query("DELETE FROM ".$ecs->table('order_info'). " WHERE order_id = '$order_id'"); $db->query("DELETE FROM ".$ecs->table('order_goods'). " WHERE order_id = '$order_id'"); $db->query("DELETE FROM ".$ecs->table('order_action'). " WHERE order_id = '$order_id'"); 后面添加 /*根据订单编号,删除对应订单备注*/ $db->query("DELETE FROM " .$ecs->table('order_note') . " WHERE order_id = '$order_id'"); 批量删除,以下代码 /* 删除订单 */ $db->query("DELETE FROM ".$ecs->table('order_info'). " WHERE order_id = '$order[order_id]'"); $db->query("DELETE FROM ".$ecs->table('order_goods'). " WHERE order_id = '$order[order_id]'"); $db->query("DELETE FROM ".$ecs->table('order_action'). " WHERE order_id = '$order[order_id]'"); 后面添加 /*根据订单编号,删除对应订单备注(批量删除)*/ $db->query("DELETE FROM " .$ecs->table('order_note') . " WHERE order_id = '$order[order_id]'"); 批量删除,以下代码 $GLOBALS['db']->query("DELETE FROM ".$GLOBALS['ecs']->table('order_info'). " WHERE order_id = '$order_id'"); $GLOBALS['db']->query("DELETE FROM ".$GLOBALS['ecs']->table('order_goods'). " WHERE order_id = '$order_id'"); $GLOBALS['db']->query("DELETE FROM ".$GLOBALS['ecs']->table('order_action'). " WHERE order_id = '$order_id'"); 后面添加 /*根据订单编号,删除对应订单备注*/ $GLOBALS['db']->query("DELETE FROM ".$GLOBALS['ecs']->table('order_note'). " WHERE order_id = '$order_id'"); 2.3商品扩展名功能开发 2.3.1执行SQL语句。 在phpmyadmin下选择ecshop数据库,执行以下语句,在ecs_goods表中增加商品扩展名字段 ALTER TABLE `ecs_goods` ADD `goods_name_extends` VARCHAR( 80 ) NOT NULL AFTER `goods_name` 2.3.2添加商品扩展名 /admin/templates/goods_list.htm ,以下代码 <th><a href="javascript:listTable.sort('goods_name'); ">{$lang.goods_name}</a>{$sort_goods_name}</th> 后面添加: <th><a href="javascript:listTable.sort('goods_name_extends');">{$lang.goods_name_extends}</a>{$sort_goods_name_extends}</th> 以下代码 <td class="first-cell" style="{if $goods.is_promote}color:red;{/if}"><span onclick="listTable.edit(this, 'edit_goods_name', {$goods.goods_id})">{$goods.goods_name|escape:html}</span></td> 后面添加 <td class="first-cell" style="{if $goods.is_promote}color:red;{/if}"><span id="goods_extends" onclick="listTable.edit_teshu(this, 'edit_goods_name_extends', {$goods.goods_id})">{$goods.goods_name_extends|escape:html} </span></td> 2.3.3商品信息页添加商品扩展名 /admin/templates/goods_info.htm , 以下代码 <tr><td class="label">{$lang.lab_goods_name}</td> <td><input type="text" name="goods_name" value="{$goods.goods_name|escape}" style="float:left;color:{$goods_name_color};" size="30" /> <div style="background-color:{$goods_name_color};float:left;margin-left:2px;" id="font_color" onclick="ColorSelecter.Show(this);"><img src="images/color_selecter.gif" style="margin-top:-1px;" /></div><input type="hidden" id="goods_name_color" name="goods_name_color" value="{$goods_name_color}" /> <select name="goods_name_style"> <option value="">{$lang.select_font}</option> {html_options options=$lang.font_styles selected=$goods_name_style} </select> {$lang.require_field}</td> </tr> 后面添加 <tr> <td class="label">{$lang.lab_goods_name_extends}</td> <td><input type="text" name="goods_name_extends" value="{$goods.goods_name_extends|escape}" style="float:left;color:{$goods_name_color};" size="30" /></td> </tr> 2.3.4修改语言包 /languages/zh_cn/admin/goods.php ,以下代码 $_LANG['goods_name'] = '商品名称'; 后面添加 $_LANG['goods_name_extends'] = '商品扩展名称'; 以下代码 $_LANG['lab_goods_name'] = '商品名称:'; 后面添加 $_LANG['lab_goods_name_extends'] = '商品扩展名称:'; 2.3.5修改商品添加文件/admin/goods.php ,以下代码 $sql = "INSERT INTO " . $ecs->table('goods') . " (goods_name, 修改为(共两处) $sql = "INSERT INTO " . $ecs->table('goods') . " (goods_name, goods_name_extends, 以下代码 "VALUES ('$_POST[goods_name]',' 修改为(共两处) "VALUES ('$_POST[goods_name]','$_POST[goods_name_extends]', 以下代码 $sql = "UPDATE " . $ecs->table('goods') . " SET " . "goods_name = '$_POST[goods_name]', " . 后面添加 "goods_name_extends = '$_POST[goods_name_extends]', " . 2.3.6修改商品显示文件/admin/includes/lib_goods.php ,以下代码 $sql = "SELECT goods_id, goods_name, 修改为 $sql = "SELECT goods_id, goods_name, goods_name_extends , 2.3.7在前台商品页显示商品名称扩展 在当前使用的模版文件夹下的goods.dwt ,以下代码 {$goods.goods_style_name} 后面添加 {$goods.goods_name_extends} 2.3.8修改商品栏目页显示文件/catagory.php ,以下代码 /* 获得商品列表 */ $sql = 'SELECT g.goods_id, g.goods_name, 后面添加 g.goods_name_extends, 以下代码 $arr[$row['goods_id']]['goods_brief'] = $row['goods_brief']; 后面添加 $arr[$row['goods_id']]['goods_name_extends'] = $row['goods_name_extends']; 2.3.9在分类列表页显示商品名称扩展 在当前使用的模版文件夹下的library/goods_list.lbi ,以下代码 <p class="name"> <!-- {if $goods.watermark_img} --> <span class="watermark_small {$goods.watermark_img}">{$goods.watermark_img}</span> <!-- {/if} --> <a href="{$goods.url}" title="{$goods.name|escape:html}">{$goods.goods_name}</a></p> 修改为 <p class="name"> <!-- {if $goods.watermark_img} --> <span class="watermark_small {$goods.watermark_img}">{$goods.watermark_img}</span> <!-- {/if} --> <a href="{$goods.url}" title="{$goods.name|escape:html}">{$goods.goods_style_name}</a> {$goods.goods_name_extends}</p> 2.4多货币解方案的开发 2.4.1执行SQL语句 在phpmyadmin下选择ecshop数据库,执行以下语句,在ecs_shop_config表中插入 INSERT INTO `ecs_shop_config` ( `id` ,`parent_id` ,`code` ,`type` ,`store_range` ,`store_dir` ,`value` ,`sort_order` ) VALUES (NULL , '1', 'rate', 'text', '', '', '1,0.71,0.69,6.85,1.45', '1'), (NULL , '1', 'ybprice_format', 'text', '', '', '&%s', '1' ), (NULL , '1', 'aprice_format', 'text', '', '', 'EUR%s', '1'), (NULL , '1', 'cprice_format', 'text', '', '', '¥%s', '1'), (NULL , '1', 'aoprice_format', 'text', '', '', 'AU%s', '1'); 2.4.2修改多货币语言包 /languages/zh_cn/admin/shop_config.php ,添加以下语句 $_LANG['cfg_name']['rate'] = '货币汇率'; $_LANG['cfg_name']['ybprice_format'] = '英镑格式'; $_LANG['cfg_name']['aprice_format'] = '欧元格式'; $_LANG['cfg_name']['cprice_format'] = '人民币格式'; $_LANG['cfg_name']['aoprice_format'] = '澳元格式'; $_LANG['cfg_desc']['rate'] = '输入规则按照和美元的汇率进行输入 US,EUR,BritishPound,China,Austrilian'; $_LANG['cfg_desc']['ybprice_format'] = '显示英镑格式,%s将被替换为相应的价格'; $_LANG['cfg_desc']['aprice_format'] = '显示欧元格式,%s将被替换为相应的价格'; $_LANG['cfg_desc']['cprice_format'] = '显示人民币格式,%s将被替换为相应的价格'; $_LANG['cfg_desc']['aoprice_format'] = '显示澳元格式,%s将被替换为相应的价格'; 2.4.3修改头部模版文件 当前使用模版目录下的library/page_header.lbi ,以下代码 <ul class="hd-my"> 后面添加 <a href="{$url_head}¤cy=USD" >美元</a> <a href="{$url_head}¤cy=GBP">英镑</a> <a href="{$url_head}¤cy=EUR">欧元</a> <a href="{$url_head}¤cy=CNY">人民币</a> <a href="{$url_head}¤cy=AUD">澳元</a> 2.4.4加载页面session值 /include/init.php 页面尾端添加 $url_this="http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']."?id=".@$_GET['id']; //echo $url_this; $smarty->assign("url_head",$url_this); $currency=@$_GET['currency']; if ($currency!=""){ $_SESSION['currency']=$currency; } if ($_SESSION['currency']==''){ $_SESSION['currency']='USD'; } echo $_SESSION['currency']; 2.4.5格式化商品价格 /includes/lib_common.php,在文档后面添加以下代码 /** * 用于支付换算 * * @access public * @param float $price 商品价格 * @return string */ function price_format_hs($price, $change_price = true) { $currency=$_SESSION['currency']; $rate=explode(',',$GLOBALS['_CFG']['rate']); if($currency=='USD'){$price=$price*$rate[0];} if($currency=='CNY'){$price=$price*$rate[3];} if($currency=='EUR'){$price=$price*$rate[1];} if($currency=='GBP'){$price=$price*$rate[2];} if($currency=='AUD'){$price=$price*$rate[4];} if ($change_price && defined('ECS_ADMIN') ==展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




毕业设计-商城网站设计.doc



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/2173006.html