消息:implode():如果复选框值没有任何记录或为空,则传递无效的参数

时间:2019-03-29 10:16:12

标签: codeigniter

将记录添加到数据库中时。根据选择显示某些字段,此时未显示某些复选框字段。然后,传递值为空。

$data = array(
        'pro_name'=>$this->input->post('pro_name'),
        'c_id'=>$this->input->post('c_id'),
        's_id'=>$this->input->post('s_id'),
        'pro_price'=>$this->input->post('pro_price'),
        'c_name'=>$c_name,
        's_name' => $s_name,
        'power_consumption'=>$this->input->post('power_consumption'),
        'model'=>$this->input->post('model'),
        'type'=>$this->input->post('type'),
        'cutout_size'=>$this->input->post('cutout_size'),
        'cct' => substr(implode(', ', $this->input->post('cct')), 0),  
        'feet' => substr(implode(', ', $this->input->post('feet')), 0),         
        'p_application' => substr(implode(', ', $this->input->post('p_application')), 0),  
        'p_desc'=>$this->input->post('p_desc'),
        'pro_status'=> '5'
    );
    //print_r($data); die();
    $this->db->insert('product',$data);

如果按字段选择在我的表单中不存在cct列,则它将值设置为0或删除

  

消息:implode():传递了无效的参数。

1 个答案:

答案 0 :(得分:1)

不要在cct数组中添加$data

首先,检查cct是否为空,然后使用implode()

if($this->input->post('cct')){
   $data['cct'] = substr(implode(', ', $this->input->post('cct')), 0);
} 

与其他使用implode()

的用户相同