商品相册图片删除
当商品删除时,把相册中的图片一并从硬盘和数据库中删除,根据商品id【因为每一张商品相片都会生成三张缩略图,所以删除时要将其缩略图一并删除】
//钩子方法_before_delete:删除前的操作 protected function _before_delete($option) { $id = $option['where']['id']; //要删除的商品的ID /***********删除商品相片********/ //先查询出原商品相册的路径 $gpModel = M('goods_pic'); $pics = $gpModel->field('pic,sm_pic,mid_pic,big_pic')->where(array( 'goods_id' => array('eq', $id), ))->select(); foreach ($pics as $k => $v){ deleteImage($v); //$v是一个数组 } $gpModel->where(array( //根据商品id删除数据库中的路径信息 'goods_id' => array('eq', $id), ))->delete(); /***********删除LOGO********/ //先查询出原来的图片的路径 $oldLogo = $this->field('logo,mbig_logo,big_logo,mid_logo,sm_logo')->find($id); deleteImage($oldLogo); /****** 删除会员价格 ********/ //根据商品表id 删除操作【后用了外键级联删除,则不需要写这段代码】 /* $mpModel = D('member_price'); $mpModel->where(array( 'goods_id' => array('eq', $id), ))->delete(); */ }