Сохранение нескольких путей к изображениям при вставке данных в 2 таблицы в Codeigniter

Я пытаюсь заставить это приложение работать. На данный момент он загружает несколько изображений в папку [upload] и данные в одной из таблиц (кроме папки изображений).

У меня есть 2 таблицы. Один для другой информации и только изображения. Другая информационная таблица вставляется даже в случае ошибки. в то время как таблица изображений ничего не вставляет.

Моя модель:

function insert_property_details($data) {
$this->db->trans_start();
// First Table
       $insert_property_in_database=array(
       'v_item_title'   => $this->input->post('v_item_title'),
       'v_item_description' => $this->input->post('v_item_description'),
       'images_reference_id'    => $this->db->insert_id(),
       );
       $query=$this->db->insert('vbc_vacation_item_attri',$insert_property_in_database);
        return $query;
// Second Table
        $data = array('property_images' => $data['uploadedimage']);
        $this->db->insert('vbc_property_images', $data);

        $this->db->trans_complete();
        return $this->db->insert_id();
}

Загрузить контроллер:

  $this->upload->initialize($config);
  if ($this->upload->do_upload('uploadedimage')) {
    $data['upload_data'] = $this->upload->data();
    $image_name = $data['upload_data']['file_name'];

    $data['upload_data'] = $image_name;
    $this->load->model('admin/model_users');
    $this->model_users->insert_property_details($data);
  } else {

Контроллер, который ссылается на FORM:

public function post_property() {
//Some validation code here
if($this->form_validation->run() == FALSE) {
        redirect('dashboard/add-new-listing');
} else {
        $this->load->model('admin/model_users');
        if($query = $this->model_users->insert_property_details()) {
        redirect('dashboard/property-successfully-posted');
   }
}

И ФОРМА:

<input type="file" class="input-text-custom" data-placeholder="select image/s" name="uploadedimages[]" accept="image/*" multiple id="file" />

Пожалуйста помоги.

1 ответ

В вашей модели есть return заявление дано -

return $query;

Поэтому остальные коды не будут выполняться, поэтому данные, связанные с изображениями, не вставляются

 function insert_property_details($data) {
$this->db->trans_start();
// First Table
       $insert_property_in_database=array(
       'v_item_title'   => $this->input->post('v_item_title'),
       'v_item_description' => $this->input->post('v_item_description'),
       'images_reference_id'    => $this->db->insert_id(),
       );
       $query=$this->db->insert('vbc_vacation_item_attri',$insert_property_in_database);
       // return $query;  this is not required
// Second Table
        $data = array('property_images' => $data['uploadedimage']);
        $this->db->insert('vbc_property_images', $data);

        $this->db->trans_complete();
        return $this->db->insert_id();
}
Другие вопросы по тегам