public function create(){
$m=M("jiechu");
$r=M("remain");
$c=M("chuku");
$date1=date("Y");
$number['chuku_number']=array('like',"%$date1%");
$sql1=$c->where($number)->order('chuku_number desc')->find();
$count1=$c->where($number)->count();
if($count1>0){
$chuku_number= $sql1['chuku_number']+1;
} else{
$chuku_number=$date1.'0001';
}
for($i=0;$i<5;$i++){
if($_POST["jiechu_qty$i"]>0){ //判断数量是否为0,如果为0记录将舍去。
$where['remain_product_name']=$_POST["jiechu_product_name$i"];
$where['remain_lot']=$_POST["jiechu_lot$i"];
$result=$r->where($where)->find();
if($result['remain_qty']>$_POST["jiechu_qty$i"]){ //判断库存记录中库存是否充足
$a=$result['remain_qty']-$_POST["jiechu_qty$i"]; //计算库存表中新的数量
$b=$a*$result['remain_unit_price']; //计算库存表中新的金额
$data['remain_id']=$result['remain_id']; //更新用到的唯一值。
$data['remain_qty']=$a;
$data['remain_amount']=$b;
$count2=$r->save($data);
//新增一张出库单
$c->chuku_number=$chuku_number;
$c->chuku_date=$_POST["jiechu_date"];
$c->chuku_program=$_POST["jiechu_program"];
$c->chuku_department=$_POST["jiechu_department"];
$c->chuku_product_name=$_POST["jiechu_product_name$i"];
$c->chuku_code=$_POST["jiechu_code$i"];
$c->chuku_spec=$_POST["jiechu_spec$i"];
$c->chuku_kind=$_POST["jiechu_kind$i"];
$c->chuku_lot=$_POST["jiechu_lot$i"];
$c->chuku_exp=$_POST["jiechu_exp$i"];
$c->chuku_supplier=$_POST["jiechu_supplier$i"];
$c->chuku_unit=$_POST["jiechu_unit$i"];
$c->chuku_qty=$_POST["jiechu_qty$i"];
$c->chuku_unit_price=$_POST["jiechu_unit_price$i"];
$c->chuku_amount=$_POST["jiechu_amount$i"];
$c->chuku_remark=$_POST["jiechu_remark$i"];
$c->chuku_keeper=$_POST["jiechu_keeper"];
$c->chuku_operator=$_POST["jiechu_operator"];
$count3=$c->add();
//将数据写入借出表
$m->jiechu_number=$_POST["jiechu_number"];
$m->chuku_number=$chuku_number;
$m->jiechu_date=$_POST["jiechu_date"];
$m->jiechu_program=$_POST["jiechu_program"];
$m->jiechu_department=$_POST["jiechu_department"];
$m->jiechu_product_name=$_POST["jiechu_product_name$i"];
$m->jiechu_code=$_POST["jiechu_code$i"];
$m->jiechu_spec=$_POST["jiechu_spec$i"];
$m->jiechu_kind=$_POST["jiechu_kind$i"];
$m->jiechu_lot=$_POST["jiechu_lot$i"];
$m->jiechu_exp=$_POST["jiechu_exp$i"];
$m->jiechu_supplier=$_POST["jiechu_supplier$i"];
$m->jiechu_unit=$_POST["jiechu_unit$i"];
$m->jiechu_qty=$_POST["jiechu_qty$i"];
$m->jiechu_unit_price=$_POST["jiechu_unit_price$i"];
$m->jiechu_amount=$_POST["jiechu_amount$i"];
$m->jiechu_remark=$_POST["jiechu_remark$i"];
$m->jiechu_keeper=$_POST["jiechu_keeper"];
$m->jiechu_operator=$_POST["jiechu_operator"];
$m->jiechu_approver=$_POST["jiechu_approver"];
$count4=$m->add();
} else{
$this->error('库存不足','add');
}
}
}
/*
if($count>0){
$this->success('数据添加成功');
}else{
$this->error('数据添加失败');
} */
}上面是源代码,再向出库表插入记录的时候,生成的sql出现错误,插入两条记录,一条的sql:INSERT INTO `tb_chuku` (`chuku_id`,`chuku_program`,`chuku_department`,`chuku_number`,`chuku_dingdan`,`chuku_date`,`chuku_product_name`,`chuku_code`,`chuku_spec`,`chuku_kind`,`chuku_lot`,`chuku_exp`,`chuku_supplier`,`chuku_unit`,`chuku_qty`,`chuku_unit_price`,`chuku_amount`,`chuku_remark`,`chuku_keeper`,`chuku_operator`) VALUES (5,'111','销售部',20150005,'','2015-01-01','抗原检测试剂盒','H0201','1人份/袋','成品','20141012','20151012','aaaa','人份',10,15,150,'','03',''),另一条是:INSERT INTO `tb_chuku` (`chuku_number`,`chuku_date`,`chuku_program`,`chuku_department`,`chuku_product_name`,`chuku_code`,`chuku_spec`,`chuku_kind`,`chuku_lot`,`chuku_exp`,`chuku_supplier`,`chuku_unit`,`chuku_qty`,`chuku_unit_price`,`chuku_amount`,`chuku_remark`,`chuku_keeper`,`chuku_operator`) VALUES (20150005,'2015-01-01','111','销售部','弧菌检测试剂盒','H0102','1人份/袋','成品','20141011','20151010','aaaa','人份',10,11,110,'','03','')
为啥同一代码会生成2种sql 语句,一条的语句多了个chuku_id,导致插入数据失败,我的代码里没要求插入chuku_id,不知道为啥会有这个???
最佳答案