会员价格的修改

  1. 先在修改的表单中列出会员级别【和添加时一样直接复制】

<tr>
<td class="label">会员价格:</td>
<td>
<?php foreach($mlData as $k=>$v): ?>
<?php echo $v[‘level_name‘] ;?> ¥<input type="text" name="member_price[<?php echo $v[‘id‘] ;?>]" value="" size="8"/>元<br>
<?php endforeach; ?>
</td>
</tr>

//取出所有会员的级别
$mlModel=D(‘member_level‘);
$mlData=$mlModel->select();

// 设置页面信息
$this->assign(array(
‘mlData‘=>$mlData,
‘brandData‘=> $brandData,
‘_page_title‘ => ‘修改商品‘,
‘_page_btn_name‘ => ‘商品列表‘,
‘_page_btn_link‘ => U(‘lst‘),
));

//取出这件商品已经设置好的会员价格
$mpModel=D(‘member_price‘);
$mpData=$mpModel->where(array(
‘goods_id‘ =>array(‘eq‘,$id),
))->select();
// 设置页面信息
$this->assign(array(
‘mlData‘=>$mlData,
‘mpData‘=> $mpData,

//取出所有会员的级别
$mlModel=D(‘member_level‘);
$mlData=$mlModel->select();

//取出这件商品已经设置好的会员价格
$mpModel=D(‘member_price‘);
$mpData=$mpModel->where(array(
‘goods_id‘ =>array(‘eq‘,$id),
))->select();

//把二维数组转一维: level_id=>price
$_mpData=array();
foreach($_mpData as $k => $v)
{
$_mpData[$v[‘level_id‘]]=$v[‘price‘];
}
// 设置页面信息
$this->assign(array(
‘mlData‘=>$mlData,
‘mpData‘=> $_mpData,
‘brandData‘=> $brandData,
‘_page_title‘ => ‘修改商品‘,
‘_page_btn_name‘ => ‘商品列表‘,
‘_page_btn_link‘ => U(‘lst‘),
));

<tr>
<td class="label">会员价格:</td>
<td>
<?php foreach($mlData as $k=>$v): ?>
<p>
<?php echo $v[‘level_name‘] ;?>
¥<input value="<?php echo $mpData[$v[‘id‘]] ; ?>" type="text" name="member_price[<?php echo $v[‘id‘] ;?>]" size="8"/>元
</p>
<?php endforeach; ?>
</td>
</tr>

  1. 提交表单之后把会员价格更新到会员价格表

思路:先清除原来的会员价格,把新的价格重新添加一遍就行。【代码和添加时一样,只在先删除原数据】

修改商品模型,把添加时的代码复制到修改的钩子方法:

protected function _before_update(&$data, $option)
{
$id = $option[‘where‘][‘id‘]; // 要修改的商品的ID

/**********处理会员价格 *******/
$mp=I(‘post.memebr_price‘);

$mpModel=D(‘member_price‘);

//先删除原来的会员价格
$mpModel->where(array(
‘goods_id‘=>array(‘eq‘,$id),
))->delete();

foreach($mp as $k =>$v)
{
$_v=(float)$v;
if($_v > 0)
{
$mpModel->add(array(
‘price‘=>$_v,
‘level_id‘=>$k,
‘goods_id‘=>$id,

));
}

}

时间: 2024-08-27 03:07:52

会员价格的修改的相关文章

会员价格删除

当删除一件商品时,这件商品对应的会员价格也应该从会员价格表中删除掉. 在删除一件商品之前删除会员价格 两种方法: 程序实现:[用这种,扩展性比较,不需要修改表结构] protected function _before_delete($option) { $id = $option['where']['id']; // 要删除的商品的ID /*************** 删除原来的图片 *******************/ // 先查询出原来图片的路径 $oldLogo = $this->

PHP.30-TP框架商城应用实例-后台6-商品会员-价格、级别

首先把需求分析搞清楚 主要实现两个功能 1.会员管理,设置成为会员的要求 2.添加商品时,可设置会员优惠价格 具体实现 1.建表[会员级别限定表p39_member_level{Id,级别名称,积分下限,积分上限}.会员价格表p39_member_price{会员价格,积分Id,商品Id}] drop table if exists p39_member_level; create table p39_member_level ( id mediumint unsigned not null a

基于jQuery会员中心安全修改表单代码

基于jQuery会员中心安全修改表单代码.这是一款登录密码,交易密码,手机号码,实名认证,电子邮箱,安全设置表单,会员表单等设置代码.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div class="Safety"> <dl> <dt> <strong>登录密码:</strong> <span>保障账户安全,建议您定期更换密码</span> <b><span

第39课 thinkphp5完成商品会员价格功能(后置勾子afterInsert)

目录 要实现的功能 思路: html里 控制器里 模型里的后置勾子beforeUpdate() 要实现的功能 html的表单里提交过数据到控制器,控制器调用model里的save()方并过滤掉不需要的数据后保存到goods表, 保存后会自动调用模型里的后置勾子afterInsert(),后置勾子的回调$goods里得到goods表里新插入的主键后组装好数据, 再插入到number_price表里 思路: 控制器里的用调用模型用save()方法保存,在模型里的用protected $field=t

PHP.29-TP框架商城应用实例-后台7-商品会员修改-页面优化,多表数据更新

商品表修改功能 1.页面优化,类似添加页面 1 <layout name="layout" /> 2 3 <div class="tab-div"> 4 <div id="tabbar-div"> 5 <p> 6 <span class="tab-front" >通用信息</span> 7 <span class="tab-back&quo

PHP.31-TP框架商城应用实例-后台9-商品相册-修改、删除(AJAX)

商品相册图片删除 当商品删除时,把相册中的图片一并从硬盘和数据库中删除,根据商品id[因为每一张商品相片都会生成三张缩略图,所以删除时要将其缩略图一并删除] //钩子方法_before_delete:删除前的操作 protected function _before_delete($option) { $id = $option['where']['id']; //要删除的商品的ID /***********删除商品相片********/ //先查询出原商品相册的路径 $gpModel = M(

PHP.36-TP框架商城应用实例-后台14-商品管理-商品扩展分类的删除、修改

商品分类删除 1.删除商品时,根据商品id删除扩展分类表数据 商品扩展分类修改 1.在控制器GoodsController.class.php/edit()中根据商品id取出对应的所有扩展分类 2.在修改页面edit.html中显示对应扩展分类foreach,类似添加页面 注:考虑当没有扩展分类时的显示,使用if($gcData) 3.在模型类GoodsModel.class.php/_before_update()中处理扩展分类,先删除原数据,再插入新数据[多对多时,通常的用法] <?php

hihoCode 1078 : 线段树的区间修改

#1078 : 线段树的区间修改 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 对于小Ho表现出的对线段树的理解,小Hi表示挺满意的,但是满意就够了么?于是小Hi将问题改了改,又出给了小Ho: 假设货架上从左到右摆放了N种商品,并且依次标号为1到N,其中标号为i的商品的价格为Pi.小Hi的每次操作分为两种可能,第一种是修改价格——小Hi给出一段区间[L, R]和一个新的价格NewP,所有标号在这段区间中的商品的价格都变成NewP.第二种操作是询问——小Hi给出一段

hiho一下20周 线段树的区间修改

线段树的区间修改 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 对于小Ho表现出的对线段树的理解,小Hi表示挺满意的,但是满意就够了么?于是小Hi将问题改了改,又出给了小Ho: 假设货架上从左到右摆放了N种商品,并且依次标号为1到N,其中标号为i的商品的价格为Pi.小Hi的每次操作分为两种可能,第一种是修改价格--小Hi给出一段区间[L, R]和一个新的价格NewP,所有标号在这段区间中的商品的价格都变成NewP.第二种操作是询问--小Hi给出一段区间[L, R]