2016-11-25 5 views
2

Я делаю многократную загрузку изображения в код воспламенителя, тот же код используется для обновления множественного изображения, но во время обновления я меняю имя, я не меняю изображения, затем нажмите кнопку ОК, это имя обновляется но изображения отсутствуют, но я изменяю изображение, которое только обновляет .. почему?В обновлении кода воспламенителя

мой контроллер

function update_products() 
 
    { 
 
    $id = $this->input->post('id'); 
 
    $this->load->library('upload'); 
 
    $dataInfo = array(); 
 
    $files = $_FILES; 
 
    $cpt = count($_FILES['userfile']['name']); 
 
    for($i=0; $i<$cpt; $i++) 
 
    {   
 
     $_FILES['userfile']['name']= $files['userfile']['name'][$i]; 
 
     $_FILES['userfile']['type']= $files['userfile']['type'][$i]; 
 
     $_FILES['userfile']['tmp_name']= $files['userfile']['tmp_name'][$i]; 
 
     $_FILES['userfile']['error']= $files['userfile']['error'][$i]; 
 
     $_FILES['userfile']['size']= $files['userfile']['size'][$i];  
 

 
     $this->upload->initialize($this->set_upload_options()); 
 
     $this->upload->do_upload(); 
 
     
 
      $dataInfo[] = $this->upload->data(); 
 

 
    } 
 
    $data = array(
 
     
 
     'name' => $this->input->post('name'), 
 
     'prod_image' => $dataInfo[0]['file_name'], 
 
      'prod_image1' => $dataInfo[1]['file_name'], 
 
      'prod_image2' => $dataInfo[2]['file_name'], 
 
     'upadted_time' => date('Y-m-d H:i:s') 
 
    ); 
 
    
 
    $stock = array(
 
    'discount' => $this->input->post('discount'), 
 
    ); 
 
       $this->db->where('prod_id', $id); 
 
       $this->db->update('tbl_products', $data); 
 
      $this->db->where('prods_id', $id); 
 
      $this->db->update('otc_product_discount', $stock); 
 
     
 
       $this->session->set_flashdata('msg','<div class="alert alert-success text-center">You are Successfully updated!</div>'); 
 
     redirect('index.php/admin/display_product_list'); 
 
        
 
    }   
 
    }

мой взгляд

<label for="type">Product Image</label> 
 
<img src="<?php echo base_url("./resources/images/products/"); if($row->prod_image) echo $row->prod_image; else echo "no-img.jpg"; ?>" alt="" height="50" width="50"/> 
 
<input type="file" id="med_img" class="file_upload" name="userfile[]" value="<?php echo $row->prod_image; ?>" /> 
 

 
<label for="type">Product Image2</label> 
 
<img src="<?php echo base_url("./resources/images/products/"); if($row->prod_image1) echo $row->prod_image1; else echo "no-img.jpg"; ?>" alt="" height="50" width="50"/> 
 
<input type="file" id="med_img" class="file_upload" name="userfile[]" value="<?php echo $row->prod_image1; ?>" /> 
 
<label for="type">Product Image3</label> 
 
<img src="<?php echo base_url("./resources/images/products/"); if($row->prod_image2) echo $row->prod_image2; else echo "no-img.jpg"; ?>" alt="" height="50" width="50"/> 
 
        <input type="file" id="med_img" class="file_upload" name="userfile[]" value="<?php echo $row->prod_image2; ?>" /> 
 
     

функция uplaod является

private function set_upload_options() 
 
{ 
 
    //upload an image options 
 
    $config = array(); 
 
    $config['upload_path'] = './resources/images/products/'; 
 
    $config['allowed_types'] = 'gif|jpg|png'; 
 
    $config['max_size']  = '0'; 
 
    $config['overwrite']  = FALSE; 
 

 
    return $config; 
 
}

+0

'' name' и upadted_time' поле правильно обновляется. правильно? –

+0

есть. изображение отсутствует Я не меняю изображение –

+0

любая помощь? @ Razib Al Mamun –

ответ

1

Я думает, что нужно загрузить по отдельности, как, что в контроллере.

function update_products() 
{ 
    $id = $this->input->post('id'); 
    $this->load->library('upload'); 
    $this->upload->initialize($this->set_upload_options()); 

    $data = array(); 

    if($this->upload->do_upload('userfile')) { 
     $dataInfo = $this->upload->data(); 
     $data['prod_image'] = $dataInfo['file_name']; 
    } 

    if($this->upload->do_upload('userfile1')) { 
     $dataInfo = $this->upload->data(); 
     $data['prod_image1'] = $dataInfo['file_name']; 
    } 

    if($this->upload->do_upload('userfile2')) { 
     $dataInfo = $this->upload->data(); 
     $data['prod_image2'] = $dataInfo['file_name']; 
    } 

    $data['name'] = $this->input->post('name'), 
    $data['upadted_time'] = date('Y-m-d H:i:s') 

    $stock = array(
    'discount' => $this->input->post('discount'), 
    ); 

    $this->db->where('prod_id', $id); 
    $this->db->update('tbl_products', $data); 

    $this->db->where('prods_id', $id); 
    $this->db->update('otc_product_discount', $stock); 

    $this->session->set_flashdata('msg','<div class="alert alert-success text-center">You are Successfully updated!</div>'); 
    redirect('index.php/admin/display_product_list'); 
} 

Изменение FIlE ввода имени поля userfileuserfile1 и userfile2 как ниже:

<input type="file" id="med_img" class="file_upload" name="userfile"/> 
<input type="file" id="med_img" class="file_upload" name="userfile1"/> 
<input type="file" id="med_img" class="file_upload" name="userfile2"/> 
+0

вид часть это похоже на это –

+0

в поле зрения часть изменение только ввод поле –

+0

что такое ситуация сейчас? –

Смежные вопросы