Crud Upload Image Codeigniter, Upload, Delete

Selamat datang kembali di website tips dan trik Dumet School, berjumpa kembali dengan saya yang kali ini akan share tentang Crud Upload Image Codeigniter, Upload, Delete jadi idenya kali ini adalah:

  1. Kita akan upload data kemudian menampilkan data
  2. Memberikan fungsi delete image, jadi pada saat kita delete gambar maka data pada database dan image yang ada di dalam folder akan kita hapus menggunakan fungsi unlink() bawaan dari PHP

Baik pertama – tama kita buat dulu controller upload image nya dengan nama controller/Upload_gambar.php dan masukkan script di bawah ini sekaligus menampilkan data dari database. Ups hampir lupa kita buat terlebih dahulu database nya, bisa lihat gambar di bawah ini

Crud Upload Image Codeigniter, Upload, Delete

Setting konfigurasinya di file config/database.php

Crud Upload Image Codeigniter, Upload, Delete

class Upload_gambar extends CI_Controller {

        public function __construct()
        {
                parent::__construct();
                $this->load->helper(array('form', 'url'));
                $this->load->database();
        }

        public function index()
        {
            $data['error'] = '';
            $data['result'] = $this->db->order_by('id','DESC')
                                        ->get('upload')
                                        ->result();
            $this->load->view('upload', $data);
        }
}

Kemudian buat file untuk views nya dengan nama views/uplad.php dan ketikkan script seperti gambar di bawah ini

Crud Upload Image Codeigniter, Upload, Delete

Kita buat layout untuk menampilkan hasil datanya, masih di dalam file views/upload.php

Crud Upload Image Codeigniter, Upload, Delete

Maka hasilnya seperti gambar di bawah ini

Crud Upload Image Codeigniter, Upload, Delete

Crud Upload Image Codeigniter, Upload, Delete

Pada form action mengarah pada controller upload_gambar dan metod do_upload maka kita buat metod do_upload di dalam controller upload_gambar dan masukkan script di bawah ini

public function do_upload()
        {
    $config['upload_path']          = './gambar/';
    $config['allowed_types']        = 'gif|jpg|png';
    $config['max_size']             = 0;
    $config['max_width']            = 0;
    $config['max_height']           = 0;
    $this->load->library('upload', $config);
    if (!$this->upload->do_upload('userfile')){
            $error = array('error' => $this->upload->display_errors());
            $this->load->view('upload', $error);
    }else{
        $_data = array('upload_data' => $this->upload->data());
         $data = array(
            'title'=> $this->input->post('title'),
            'image' => $_data['upload_data']['file_name']
            );
        $query = $this->db->insert('upload',$data);
        if($query){
            echo 'berhasil di upload';
            redirect('upload_gambar');
        }else{
            echo 'gagal upload';
        }
    }
}

Pada $config[‘upload_path’]  kita setting folder mana yang akan menampung imagenya, maka buat folder dengan nama gambar sejajar dengan folder application, kemudian pada proses insert data kita lakukan pengecekan jika berhasil di upload atau insert maka akan di redirect(‘upload_gambar’) ke halaman utama. Kemudian kita coba insert data, jika berhasil maka akan langsung tampil pada table yang sudah kita sediakan pada gambar script nomor 4 dari atas.

Dan kita cek pada folder gambar

Crud Upload Image Codeigniter, Upload, Delete

Kemudian pada button yang sudah kita berikan id yang mengarah ke metod delete(), kita buat fungsi delete data di dalam metod delete()

Crud Upload Image Codeigniter, Upload, Delete

Kita buat proses delete datanya

public function delete($id){
            $_id = $this->db->get_where('upload',['id' => $id])->row();
            $query = $this->db->delete('upload',['id'=>$id]);
            if($query){
                unlink("gambar/".$_id->image);
            }
            redirect('upload_gambar');
        }

Pada proses delete data kita buat pengecekan, jika berhasil maka kita berikan fungsi unlink() pada image supaya terhapus dari foldernya, jika sudah save dan refresh pada browsernya. Dan klik button delete

Crud Upload Image Codeigniter, Upload, Delete

Dan pada folder juga akan terhapus

Crud Upload Image Codeigniter, Upload, Delete

Nah itulah tips tentang Crud Upload Image Codeigniter, Upload, Delete pada artikel selanjutnya kita akan lanjutnya untuk update image dengan codeigniter. Terimakasih dan sampai jumpa.

Semoga bermanfaat.

Hernowo Author

Leave a Reply

Your email address will not be published. Required fields are marked *