ecshop 促销活动,如每人只限购1件
时间:2024年02月05日
/来源:网络
/编辑:佚名
控制ECSHOP的购买数量,在很多时候是必须的,而且当你有特别的需求的时候,控制数量显得格外重要。需要在goods表中增加个字段"gc"控制购买数量
首先,你需要在购买的时候,提示输入框,告诉用户,你必须购买多少.其次,购物车中需要修改购买数量的时候,你也需要控制。
1:详细页面中控制
在flow.php里面addto_cart中,加入以下代码,控制购买.
$gc = $db -> getOne("select gc from ".$ecs->table('goods')." where goods_id = ".$goods ->goods_id);
if ($goods->number%$gc) {
$result['error']= 1;
$result['message'] = "购买数量必须输入{$gc}的倍数";
}
2:在common.js中增加函数
function addToCart1(goodsId, parentId)
{
var goods = new Object();
var spec_arr = new Array();
var fittings_arr = new Array();
var number = 1;
var t = "number"+goodsId;
number = document.getElementById("number"+goodsId).value;
goods.spec = spec_arr;
goods.goods_id = goodsId;
goods.number= number;
goods.parent= (typeof(parentId) == "undefined") ? 0 : parseInt(parentId);
Ajax.call('flow.php?step=add_to_cart', 'goods=' + goods.toJSONString(), addToCartResponse, 'POST', 'JSON');
}
2:控制列表页面的购买.
在列表页面中,增加一个框.
<form action="javascript:addToCart1({$goods.goods_id})" method="post" name="ECS_FORMBUY{$goods.goods_id}" id="ECS_FORMBUY{$goods.goods_id}" >
购买数量:<input name="number{$goods.goods_id}" type="text" id="number{$goods.goods_id}" value="1" size="4" class="formBorder"/><br />
<a href="javascript:addToCart1({$goods.goods_id})"><img src="images/but_buy.jpg"></a>
<a href="javascript:;" id="compareLink"quotes"}','{$goods.type}')"><img src="images/but_comp.jpg"></a></form>
调用addToCart1函数.
3:推荐页面
在common.js中增加函数addToCart2
function addToCart2(goodsId, parentId)
{
var goods = new Object();
var spec_arr = new Array();
var fittings_arr = new Array();
var number = 1;
var t = "number"+goodsId;
number = document.getElementById("number_"+goodsId).value;
goods.spec = spec_arr;
goods.goods_id = goodsId;
goods.number= number;
goods.parent= (typeof(parentId) == "undefined") ? 0 : parseInt(parentId);
Ajax.call('flow.php?step=add_to_cart', 'goods=' + goods.toJSONString(), addToCartResponse, 'POST', 'JSON');
}
在recommend_new.lbi,recommend_best.lbi等页面中,需要增加输入框.调用次函数.
<form action="javascript:addToCart2({$goods.id})" method="post" name="ECS_FORMBUY_{$goods.id}" id="ECS_FORMBUY_{$goods.id}" >
购买数量:<input name="number_{$goods.id}" type="text" id="number_{$goods.id}" value="1" size="4" class="formBorder"/><br /><a href="javascript:addToCart2({$goods.id})"><img src="images/but_buy.jpg"></a></form>
最后完成了购买数量的控制。
首先,你需要在购买的时候,提示输入框,告诉用户,你必须购买多少.其次,购物车中需要修改购买数量的时候,你也需要控制。
1:详细页面中控制
在flow.php里面addto_cart中,加入以下代码,控制购买.
$gc = $db -> getOne("select gc from ".$ecs->table('goods')." where goods_id = ".$goods ->goods_id);
if ($goods->number%$gc) {
$result['error']= 1;
$result['message'] = "购买数量必须输入{$gc}的倍数";
}
2:在common.js中增加函数
function addToCart1(goodsId, parentId)
{
var goods = new Object();
var spec_arr = new Array();
var fittings_arr = new Array();
var number = 1;
var t = "number"+goodsId;
number = document.getElementById("number"+goodsId).value;
goods.spec = spec_arr;
goods.goods_id = goodsId;
goods.number= number;
goods.parent= (typeof(parentId) == "undefined") ? 0 : parseInt(parentId);
Ajax.call('flow.php?step=add_to_cart', 'goods=' + goods.toJSONString(), addToCartResponse, 'POST', 'JSON');
}
2:控制列表页面的购买.
在列表页面中,增加一个框.
<form action="javascript:addToCart1({$goods.goods_id})" method="post" name="ECS_FORMBUY{$goods.goods_id}" id="ECS_FORMBUY{$goods.goods_id}" >
购买数量:<input name="number{$goods.goods_id}" type="text" id="number{$goods.goods_id}" value="1" size="4" class="formBorder"/><br />
<a href="javascript:addToCart1({$goods.goods_id})"><img src="images/but_buy.jpg"></a>
<a href="javascript:;" id="compareLink"quotes"}','{$goods.type}')"><img src="images/but_comp.jpg"></a></form>
调用addToCart1函数.
3:推荐页面
在common.js中增加函数addToCart2
function addToCart2(goodsId, parentId)
{
var goods = new Object();
var spec_arr = new Array();
var fittings_arr = new Array();
var number = 1;
var t = "number"+goodsId;
number = document.getElementById("number_"+goodsId).value;
goods.spec = spec_arr;
goods.goods_id = goodsId;
goods.number= number;
goods.parent= (typeof(parentId) == "undefined") ? 0 : parseInt(parentId);
Ajax.call('flow.php?step=add_to_cart', 'goods=' + goods.toJSONString(), addToCartResponse, 'POST', 'JSON');
}
在recommend_new.lbi,recommend_best.lbi等页面中,需要增加输入框.调用次函数.
<form action="javascript:addToCart2({$goods.id})" method="post" name="ECS_FORMBUY_{$goods.id}" id="ECS_FORMBUY_{$goods.id}" >
购买数量:<input name="number_{$goods.id}" type="text" id="number_{$goods.id}" value="1" size="4" class="formBorder"/><br /><a href="javascript:addToCart2({$goods.id})"><img src="images/but_buy.jpg"></a></form>
最后完成了购买数量的控制。
新闻资讯 更多
热门文章
- 178Moban源码谈谈免费源码与收费源码的区别
- 2帝国CMS忘记后台登陆用户名、密码、认证码的解决方法
- 3帝国CMS(EmpireCMS) v7.5后台任意代码执行漏洞及具体修复方法
- 4帝国CMS和WordPress 哪个好?哪个适合建站?
- 5如何解决Discuz的密码错误次数过多请15分钟后登陆的问题
- 6帝国cms灵动标签取得内容和栏目链接地址
- 7emlog pro 注册码“开心”教程(如果有一天,emlog官方版 或者 emlog免费版 跑路了,那用户怎么办?)
- 8织梦CMS在nginx下设置伪静态方法(附nginx伪静态规则)
- 9帝国cms后台登录出现”您还未登录”怎么解决?
- 10帝国cms7.5忘记登录密码 和忘记登录认证码以及多次登录 失败被锁定解决办法