Обновление изображения codeigniter

Я застрял в проблеме с загрузчиком изображений. Я создал загрузчик изображений, который отлично работает, но мне также нужно их отредактировать. Когда я добавляю нужный образ, столбец db обновляется правильно, но я, если не меняю изображение и оставляю его как есть, получаю сообщение об ошибке «Изображение столбца» не может быть нулевым »

Это код для раздела обновления:

else if ($type == 'update') { if($this->input->post('image')) { $fdata = $this->savenew(); $data['image'] = $fdata['upload_data']['file_name']; } else { $data['image'] = $this->input->post('current_image'); } $return = $this->add_radio_model->update($id, $data); } 

Извините, если я не был очень явным

РЕДАКТИРОВАТЬ:

  private function savenew(){ $config['upload_path'] = './assets/'; //Make SURE that you chmod this directory to 777! $config['allowed_types'] = 'gif|jpg|png'; $config['max_size'] = '0'; // 0 = no limit on file size (this also depends on your PHP configuration) $config['remove_spaces']=TRUE; //Remove spaces from the file name $this->load->library('upload', $config); if ( ! $this->upload->do_upload('image')) { $data['error']= array('error' => $this->upload->display_errors()); log_message('error',$data['error']); } else { $data = array('upload_data' => $this->upload->data()); } return $data; } 

По нашим комментариям, здесь вам нужно изменить свой код

 else if ($type == 'update') { if($this->input->post('image')) { $fdata = $this->savenew(); // first always set current image $data['image'] = $this->input->post('current_image'); // second check if new image added if yes, then update otherwise keep original image as it is if(isset($fdata['upload_data'])){ $data['image'] = $fdata['upload_data']['file_name']; } } $return = $this->add_radio_model->update($id, $data); } 

Для второй проблемы: A PHP Error was encountered Severity: Notice Message: Array to string conversion Filename: libraries/Log.php Line Number: 99

Изменить:

 $data['error']= array('error' => $this->upload->display_errors()); log_message('error',$data['error']); 

К

 log_message('error',(string) $this->upload->display_errors());