您现在的位置是:首页 > cms教程 > Ecshop商城教程Ecshop商城教程
ecshop商品限制购买和批发起订数量的实行方法
任康焕2023-10-21Ecshop商城教程已有人查阅
导读做过商城,或者说经营过商城的都会知道,有很多商品利润很小,而且还要包运费什么的,所以根本就是做 的生意,如果利润小,数量多的话 这样就不会出现赔本的损失。
做过商城,或者说经营过商城的都会知道,有很多商品利润很小,而且还要包运费什么的,所以根本就是做 的生意,如果利润小,数量多的话 这样就不会出现赔本的损失。所以 ECSHOP商品限制购买批发起订数量插件也是很实用的插件,就是如果在后台设置商品很小起订量
第一步,商品表必须有个字段 代表某个商品很小订购数量->min_number
打开goods表 在最后字段添加一个min_number tinyint类型默认值为0 代表没有很小起订量
admin/goods.php
在'warn_number'=> 1 , 代码行后插入'min_number'=> 0,
在
将
admin/templates/goods_info.htm
在
最后添加
想做起订量限制,这个必然是在商品购买页面 购买数量框来做限制最简单的办法就是用JS当然还有别的办法;首先给那些如果给了起订量的商品 购买页面直接显示默认最少购买数量如果在后台设置的AA商品最少5个 那么进入AA商品页面购买数量默认值就是5
我这样来实现
修改themes/default/goods.dwt
最后添加JS判断就好了
themes/default/goods.dwt
在
第一步,商品表必须有个字段 代表某个商品很小订购数量->min_number
打开goods表 在最后字段添加一个min_number tinyint类型默认值为0 代表没有很小起订量
sql:alter table `ecs_goods` add column `min_number` tinyint (3) UNSIGNED DEFAULT '0' NOT NULL after `warn_number`;
第二部,在后台添加商品的时候 必须有个text文本框 设置很小起订量admin/goods.php
在'warn_number'=> 1 , 代码行后插入'min_number'=> 0,
在
$warn_number = isset($_POST['warn_number']) ? $_POST['warn_number'] : 0;
后添加代码
$min_number = isset($_POST['min_number']) ? $_POST['min_number'] : 0;
第三部修改添加商品sql语句将
/* 入库 */
if ($is_insert)
{
if ($code == '')
{
....由于发帖篇幅的限制省略原有代码无数
}
else
{
......
}
}
else
{
/* 如果有上传图片,删除原来的商品图 */
.....
}
修改代码
if ($is_insert){
if ($code == ''){
$sql = "INSERT INTO " . $ecs->table('goods') . " (goods_name, goods_name_style, goods_sn, " .
"cat_id, brand_id, shop_price, market_price, is_promote, promote_price, " .
"promote_start_date, promote_end_date, goods_img, goods_thumb, original_img,keywords, goods_brief, " .
"seller_note, goods_weight, goods_number, warn_number,min_number, integral,give_integral, is_best, is_new, is_hot, ".
"is_on_sale, is_alone_sale, goods_desc, add_time, last_update, goods_type,rank_integral)" .
"VALUES ('$_POST[goods_name]', '$goods_name_style', '$goods_sn', '$catgory_id', " .
"'$brand_id', '$shop_price', '$market_price', '$is_promote','$promote_price', ".
"'$promote_start_date', '$promote_end_date', '$goods_img', '$goods_thumb', '$original_img', ".
"'$_POST[keywords]', '$_POST[goods_brief]', '$_POST[seller_note]', '$goods_weight','$goods_number',".
"'$warn_number','$min_number', '$_POST[integral]', '$give_integral', '$is_best', '$is_new', '$is_hot', '$is_on_sale', '$is_alone_sale', ".
"'$_POST[goods_desc]', '" . gmtime() . "', '". gmtime() ."', '$goods_type','$rank_integral')";
}else{
$sql = "INSERT INTO " . $ecs->table('goods') . " (goods_name, goods_name_style, goods_sn, ".
"cat_id, brand_id, shop_price, market_price, is_promote, promote_price, " .
"promote_start_date, promote_end_date, goods_img, goods_thumb, original_img,keywords, goods_brief, " .
"seller_note, goods_weight, goods_number, warn_number, min_number,integral,give_integral, is_best, is_new, is_hot, is_real, " .
"is_on_sale, is_alone_sale, goods_desc, add_time, last_update, goods_type,extension_code, rank_integral)" .
"VALUES ('$_POST[goods_name]', '$goods_name_style', '$goods_sn', '$catgory_id', " .
"'$brand_id', '$shop_price', '$market_price', '$is_promote','$promote_price', ".
"'$promote_start_date', '$promote_end_date', '$goods_img', '$goods_thumb','$original_img', ".
"'$_POST[keywords]', '$_POST[goods_brief]', '$_POST[seller_note]', '$goods_weight','$goods_number',".
" '$warn_number','$min_number', '$_POST[integral]', '$give_integral', '$is_best','$is_new', '$is_hot', 0, '$is_on_sale', '$is_alone_sale’' ".
" '$_POST[goods_desc]', '" . gmtime() . "', '". gmtime() ."', '$goods_type', '$code', '$rank_integral')";
}
}else{
$sql = "SELECT goods_thumb, goods_img, original_img " .
" FROM " . $ecs->table('goods') .
" WHERE goods_id = '$_REQUEST[goods_id]'";
$row = $db->getRow($sql);
if ($proc_thumb && $goods_img && $row['goods_img'] &&
!goods_parse_url($row['goods_img']))
{
@unlink(ROOT_PATH . $row['goods_img']);
@unlink(ROOT_PATH . $row['original_img']);
}
if ($proc_thumb && $goods_thumb && $row['goods_thumb'] && !goods_parse_url($row['goods_thumb']))
{
@unlink(ROOT_PATH . $row['goods_thumb']);
}
$sql = "UPDATE " . $ecs->table('goods') . " SET " .
"goods_name = '$_POST[goods_name]', " .
"goods_name_style = '$goods_name_style', " .
"goods_sn = '$goods_sn', " .
"cat_id = '$catgory_id', " .
"brand_id = '$brand_id', " .
"shop_price = '$shop_price', " .
"market_price = '$market_price', " .
"is_promote = '$is_promote', " .
"promote_price = '$promote_price', " .
"promote_start_date = '$promote_start_date', " .
"promote_end_date = '$promote_end_date', ";
if ($goods_img)
{
$sql .= "goods_img = '$goods_img', original_img = '$original_img', ";
}
if ($goods_thumb)
{
$sql .= "goods_thumb = '$goods_thumb', ";
}
if ($code != '')
{
$sql .= "is_real=0, extension_code='$code', ";
}
$sql .= "keywords = '$_POST[keywords]', " .
"goods_brief = '$_POST[goods_brief]', " .
"seller_note = '$_POST[seller_note]', " .
"goods_weight = '$goods_weight'," .
"goods_number = '$goods_number', " .
"warn_number = '$warn_number', " .
"min_number = '$min_number', " .
"integral = '$_POST[integral]', " .
"give_integral = '$give_integral', " .
"rank_integral = '$rank_integral', " .
"is_best = '$is_best', " .
"is_new = '$is_new', " .
"is_hot = '$is_hot', " .
"is_on_sale = '$is_on_sale', " .
"is_alone_sale = '$is_alone_sale', " .
"goods_desc = '$_POST[goods_desc]', " .
"last_update = '". gmtime() ."', ".
"goods_type = '$goods_type' " .
"WHERE goods_id = '$_REQUEST[goods_id]' LIMIT 1";
}
第四步修改后台模板文件(在市场价会员价 后边添加设置很小起订量)admin/templates/goods_info.htm
在
<tr>
<td class="label">{$lang.lab_shop_price}</td>
<td><input type="text" name="market_price" value="{$goods.shop_price}" size="20" />
<input type="button" value="{$lang.integral_market_price}" onclick="integral_market_price()" />{$lang.require_field}</td>
</tr>
添加
<!-- 新增 批发数量限制 begin -->
<tr>
<td class="label">{$lang.lab_min_number}</td>
<td><input type="text" name="min_number" value="{$goods.min_number}" size="20" />
<span class="notice-span" {if $help_open}style="display:block" {else} style="display:none" mce_style="display: none;" {/if} id="minNumber">{$lang.notice_min_number}</span>
</td>
</td>
</tr>
<!-- 批发数量限制 end -->
第五步:修改语言languages/zh_cn/admin/goods.php最后添加
$_LANG['lab_min_number'] = '很小购买数量:';
$_LANG['notice_min_number'] = '该商品很小购买数量,0表示按购买数量 制.'
到现在位置 后台设置全部结束了,不知道大家能懂了没有下面我们说说前台如何来实现我以ecshop官方模板为例子给大家讲解想做起订量限制,这个必然是在商品购买页面 购买数量框来做限制最简单的办法就是用JS当然还有别的办法;首先给那些如果给了起订量的商品 购买页面直接显示默认最少购买数量如果在后台设置的AA商品最少5个 那么进入AA商品页面购买数量默认值就是5
我这样来实现
修改themes/default/goods.dwt
<input name="number" type="text" id="number" value="1" size="4" onBlur="changePrice()" style="border:1px solid #ccc; " mce_style="border: 1px solid #ccc;"/>
改成
<input name="number" type="text" id="number" value="{$goods.min_number|default:"1"}" size="4" onblur="changePrice()" style=”border:1px solid #ccc; " mce_style="border: 1px solid #ccc;"/><br/>
这样就是value 也就是默认值了最后添加JS判断就好了
themes/default/goods.dwt
在
var qty = document.forms['ECS_FORMBUY'].elements['number'].value;
后添加
{if $goods.min_number}
if(qty < {$goods.min_number})
{
alert('您输入的数字小于此商品很小购买数量:{$goods.min_number}');
qty = {$goods.min_number};
}
{/if}
本文标签:
很赞哦! ()
相关教程
图文教程
ecshop百万级数据性能优化提升访问速度
如果ecshop的商品数达到几万,十几万的时候,如果首页没有缓存,第一次访问的时候,你会发现其慢无比,原因就是清空了Cache后或者没有Cache的情况下
ecshop截取中文字符串的代码实例
做ecshop的时候要把用户订单的姓名显示在网页中但是又不想全部显示出来,这时会用到截取中文字符的情况,由于中文的截取经常出现乱码
ecshop积分充值可充值等级积分余消费积分教程
随着实体店与网店的结合 很多实体店开始开发属于自己的网上商城,网络商城经常有一个做法就是不人名币转换成商城自己的表示方式,在此就叫做积分。
ecshop数据库MYSQL现有数据表增加新的字段
执行查询语句:ALTER TABLE `ec_order_info`ADD COLUMN `trade_no` varchar(100) NOT N
相关源码
-
(PC+WAP)生活资讯百科新闻门户类pbootcms网站模板为生活资讯、百科门户类企业打造的高性能网站模板,基于PbootCMS开源内核开发,采用HTML5响应式架构,PC与手机端实时数据同步,覆盖全终端用户浏览场景。查看源码 -
帝国cms7.5女性护肤搭配美妆潮流网站源码带数据4.5G本模板专为女性美容护肤行业设计,提供美容护肤、发型设计、女性健康、时尚化妆、娱乐新闻、服饰搭配等女性潮流资讯内容展示。采用帝国CMS7.5开发,同步生成电脑端和手机端,满足用户对美容时尚信息的获取需求。查看源码 -
(自适应)餐具英文外贸生活用品带下载功能网站模板免费下载为餐具及生活用品外贸企业打造的响应式网站模板,基于PbootCMS内核开发。突出产品展示与多语言支持特性,通过自适应设计确保更好客户在手机、平板、电脑等设备上获得一致浏览体验。查看源码 -
(自适应响应式)WORDwps办公资源教程资讯网站模板下载基于PbootCMS内核开发的响应式网站模板,为办公教程、WPS技巧分享、职场技能培训等场景打造。模板内置标准化文档分类体系,支持图文/视频教程混合展示,满足现代办公知识传播需求。查看源码 -
(自适应响应式)高端网站建设设计公司互联网营销网站pbootcms模板本模板基于PbootCMS内核开发,为网站建设公司和互联网营销企业量身打造。采用响应式设计,适配各种移动设备,提供统一的后台管理体验查看源码 -
帝国cms题库问答学习平台模板知识付费网站源码+数据采集为教育机构、培训平台及在线学习场景设计,提供完整的题库管理与问答服务解决方案。支持多种题型展示与答案查询,满足不同层次的学习需求。查看源码
| 分享笔记 (共有 篇笔记) |
