在最近的窗帘项目中,我需要增加新的计价方法,其中就有一个是在后台输入价格的:
数据表:
购买页面
点击提交订单
那么我要算出有遮光衬布物品的价格,就必须知道我在后台设置的价格是多少
所以上代码:
// 控制器关键
$interfacing = Model('setting')->where(array('name'=>array('in',array('NoShadingcloth','Shadingcloth'))))->select();
$array = array();
foreach ($interfacing as $val){
$array[$val['name']] = $val['value'];
}
if($_POST['interfacing']==0){
$extend_params['cunbu']=0;
}
if($_POST['interfacing']==1){
$extend_params['cunbu']=$array['Shadingcloth'];
$extend_params['cunbucloth']="遮光衬布";
}
if($_POST['interfacing']==2){
$extend_params['cunbu']=$array['NoShadingcloth'];
$extend_params['cunbucloth']="不遮光衬布";
}
...
//前端
<ul class="cunb clearfix">
<li>
<span style="font-weight: bold;">衬布</span>
<span><input style="width: 14px;height: 12px;" type="radio" checked="checked" class="interfacing" id="minimal-radio-1" name="interfacing" value="0" >无衬布</span>
<span><input style="width: 14px;height: 12px;" type="radio" class="interfacing" id="minimal-radio-1" name="interfacing" value="1" >遮光衬布</span>
<span><input style="width: 14px;height: 12px;" type="radio" class="interfacing" id="minimal-radio-1" name="interfacing" value="2" >不遮光衬布</span>
</li>
</ul>
...
//遮光布
var interfacing=$('input:radio[name="interfacing"]:checked').val();
$.ajax({
url: "<?php echo PHONE_SITE_URL.url('member_cart','add_body');?>",
data:{goods:goods,quantity:quantity,width:width,height:height,c_height:c_height,hl:hl,pay_message:pay_message,interfacing:interfacing},
type:"post",
success:function (result){
if( result == 1 ){
window.location.href = "<?php echo PHONE_SITE_URL.url('member_cart','cart_list',array('type'=>2));?>";
}else{
layer.alert(result);
}
}
});
然后在根据公式算出最后的价格
总结
在计价方面的项目要特别注意值的有效性,并且如果你是在修改之前别人做过的项目中,你要特别的注意你加的变量和原有变量是否会冲突
注:文章来源雨中笑记录实习期遇到的问题与心得,转载请申明原文
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。