ecshop中商品配件功能实现和配件价格的问题
2009-10-13 22:36 来源:www.chinab4c.com 作者:ecshop专家
ecshop中,有配件这个概念。而且ecshop中配件的概念就是.在增加录入该商品A的时候,你可以录入a,b,c作为A商品的配件。
1:增加ecshop商品配件的方法
后台->商品管理->增加新商品->配件.在这里你可以选择某个类别下面的商品。作为配件,而且还可以指定该配件的价格。
2:因为出现了ecshop配件的问题,所以。在购买A商品的时候,在购物车的下面,会出现该商品A下的配件。而ecshop中产品A的所有配件就存储在表group_goods中。里面存储了A的ID,也存储了配件,a,b,c的ID.用来匹配的。
3:配件,可以在购买A的时候,计算出配件的价格。而并非配件产品本身的价格,从而可以利用配件,进行套餐的匹配.
4:echop计算配件的价格函数分析
function get_goods_fittings($goods_list = array())
{
$temp_index = 0;
$arr = array();
$sql = 'SELECT gg.parent_id, ggg.goods_name AS parent_name, gg.goods_id, gg.goods_price, g.goods_name, g.goods_thumb, g.goods_img, g.shop_price AS org_price, ' .
"IFNULL(mp.user_price, g.shop_price * '$_SESSION[discount]') AS shop_price ".
'FROM ' . $GLOBALS['ecs']->table('group_goods') . ' AS gg ' .
'LEFT JOIN ' . $GLOBALS['ecs']->table('goods') . 'AS g ON g.goods_id = gg.goods_id ' .
"LEFT JOIN " . $GLOBALS['ecs']->table('member_price') . " AS mp ".
"ON mp.goods_id = gg.goods_id AND mp.user_rank = '$_SESSION[user_rank]' ".
"LEFT JOIN " . $GLOBALS['ecs']->table('goods') . " AS ggg ON ggg.goods_id = gg.parent_id ".
"WHERE gg.parent_id " . db_create_in($goods_list) . " AND g.is_delete = 0 AND g.is_on_sale = 1 ".
"ORDER BY gg.parent_id, gg.goods_id";
$res = $GLOBALS['db']->query($sql);
while ($row = $GLOBALS['db']->fetchRow($res))
{
$arr[$temp_index]['parent_id'] = $row['parent_id'];//配件的基本件ID
$arr[$temp_index]['parent_name'] = $row['parent_name'];//配件的基本件的名称
$arr[$temp_index]['parent_short_name'] = $GLOBALS['_CFG']['goods_name_length'] > 0 ?
sub_str($row['parent_name'], $GLOBALS['_CFG']['goods_name_length']) : $row['parent_name'];//配件的基本件显示的名称
$arr[$temp_index]['goods_id'] = $row['goods_id'];//配件的商品ID
$arr[$temp_index]['goods_name'] = $row['goods_name'];//配件的名称
$arr[$temp_index]['short_name'] = $GLOBALS['_CFG']['goods_name_length'] > 0 ?
sub_str($row['goods_name'], $GLOBALS['_CFG']['goods_name_length']) : $row['goods_name'];//配件显示的名称
$arr[$temp_index]['fittings_price'] = price_format($row['goods_price']);//配件价格
$arr[$temp_index]['shop_price'] = price_format($row['shop_price']);//配件原价格
$arr[$temp_index]['goods_thumb'] = get_image_path($row['goods_id'], $row['goods_thumb'], true);
$arr[$temp_index]['goods_img'] = get_image_path($row['goods_id'], $row['goods_img']);
$arr[$temp_index]['url'] = build_uri('goods', array('gid'=>$row['goods_id']), $row['goods_name']);
$temp_index ++;
}
return $arr;
}
本函数中告诉我们,ecshop配件的价格,是读了group_goods表中的goods_price字段的值.而放到购物车中的时候,也是通过该字段计算。那么,配件的价格,永远能体现出.基件和配件的关系。
相关文章:
来源:中国B4C电子商务
最近更新
常用插件
- ecshop购物车功能改进[插件
ecshop购物车功能改进[插件套餐]主要是我们最近开发工作和开发项目中。...
- ecshop降价通知登记插件
ecshop降价通知登记插件,主要是为了方便某些客户,对商品价格要求比...
- ecshop分类树中统计商品数
最近忙于开发其他项目,在不少朋友不断要求和催促的情况下,做出了该小...
- ecshop红包修改成满多少减
我们在长期使用ecshop的时候,我们可以发现。ecshop的红包是一个非常强...
- ecshop通用红包编码
很多时候,为了结合促销,必须扩展一下ecshop的红包功能。ecshop的红包...