2016-09-23 4 views
0

контроллер:Как загрузить изображение в CodeIgniter

public function edit($id) { 
    $this->edit_status_check($id); 
    $this->form_validation->set_rules('agent_name', 'Agent Name', 'required'); 
    $this->form_validation->set_rules('mobile', 'Mobile No.', 'required'); 
    $this->form_validation->set_rules('agent_vehicle', 'Agent Vehicle', 'required'); 
    if ($this->form_validation->run() == FALSE) { 
     $data = array(
      'page_title' => 'Edit Agent', 
      'page_name' => 'agent/edit', 
      'result' => $this->agent_model->select_id($id), 
      'result_vehicle' => $this->vehicle_model->list_all(), 
      'error' => validation_errors(), 
      'id' => $id 
     ); 
     $this->load->view('template', $data); 
    } else { 
     $config['upload_path'] = '../uploads/agent/'; 
     $config['allowed_types'] = 'jpg|jpeg'; 
     $config['encrypt_name'] = TRUE; 
     $config['max_size'] = 1000; // 1 mb 
     $this->load->library('upload', $config); 
     if (!$this->upload->do_upload('agent_image')) { 
      $data = array(
       'page_title' => 'Edit Agent', 
       'page_name' => 'agent/edit', 
       'result' => $this->agent_model->select_id($id), 
       'result_vehicle' => $this->vehicle_model->list_all(), 
       'error' => $this->upload->display_errors(), 
       'id' => $id 
      ); 
      $this->load->view('template', $data); 
     } else { 
      $_POST['agent_img_url'] = 'uploads/agent/' . $this->upload->data('file_name'); 
      $this->agent_model->update($_POST, $id); 
      alert('Update', $_POST['agent_name']); 
      redirect('agent'); 
     } 
    } 
} 

Модель:

public function update($data, $id) { 
    $updatedata = array(
     'name' => $data['agent_name'], 
     'mobile' => $data['mobile'], 
     'password' => sha1($data['password']), 
     'vehicle' => $data['agent_vehicle'], 
     'address' => $data['agent_address'], 
     'category' => $data['category'], 
     'created_on' => date('Y-m-d h:i:sa') 
    ); 
    if (!empty($data['agent_img_url'])) { 
     $updatedata['img_url'] = $data['agent_img_url']; 
    } 
    $this->db->where('id', $id); 
    $this->db->update('agent', $updatedata); 
} 

Вид:

<?= form_open_multipart('agent/edit/' . $id); ?> 
    <?php if (!empty($error)): ?> 
     <div class="alert alert-danger alert-dismissible" role="alert"> 
      <?= $error; ?> 
     </div> 
    <?php endif; ?> 
    <div class="form-group"> 
     <img src="/<?= $result['img_url']; ?>" class="img-responsive" name="old_agent_image" width="133" height="100"> 
    </div> 
    <div class="form-group"> 
     <label>Agent Image</label> 
     <input type="file" name="agent_image"> 
    </div> 
    <button type="submit" class="btn btn-success">Update</button> 
<?= form_close(); ?> 

Привет Я занимаюсь разработкой uploa изображения d модуль и путь к изображению сохраняются в базе данных и извлекаются. my Question Я хочу, чтобы он редактировал и обновлял, но проблема в том, что он не удаляет старое изображение в папке, но сохраняет и обновляет новое изображение.

ответ

1

использование файла помощник CodeIgniter

$this->load->helper("file"); 
delete_files($path); 

ссылка ссылка для вас here

+0

C: \ Apache24 \ htdocs \ abcd \ uploads \ agent \ blck.jpg как преобразовать путь к файлу в php –

+0

взять путь к файлу как «uploads \ agent \ blck.jpg». –

+0

выше редактировать код изображения не работает. –

1

Удалить, используя имя файла, сохраненного в базе данных, используйте PHP unlink(../filename.jpg) и удалять из файлов

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