Codeigniter Tutorial Compress And Resize Uploaded Image

Hello sahabat programmer, gimana kabarnya? Semoga sehat selalu ya..!

Sebelumnya saya mohon abolisi karena beberapa hari belakangan banyak kegiatan, mengerakan project dan semacamnya, jadi gak sempat posting. Tapi sekarang saya pula lagi.

Hmm..,

Pada kesempatan siapa ini saya ingin posting tentang sesuatu nan lampau menarik nih, yaitu
upload image berbarengan resize image kapan diupload.

Hmm.., Mengapa kita perlu merize image saat di upload?

Banyak alasan kok kita mesti meresize image momen di upload, akan tetapi saya cuma akan memaparkan beberapa alasan saja. Diantaranya sebagai berikut:

#1. Kecapatan, website yang cepat merupakan dambaan setiap developer web diseluruh dunia. Tapi taukah kamu bahwa pelecok satu penyebab website menjadi lambat yakni banyaknya tulangtulangan/image yang berdimensi samudra yang diload makanya suatu website. Sehingga menciptakan menjadikan performa website tersebut menjadi lambat. Itulah mengapa kita perlu meng-compress
image saat diupload. Bilang website tersohor yang menggunakan fitur compress image ini merupakan facebook.com, instagram.com, twitter.com, dan banyak lagi lainnya.

#2. Dimensions, Ukuran (rata gigi dan tinggi) susuk nan tidak kostum akan menciptakan menjadikan suatu halaman website menjadi berantakan dan tidak enak dilihat. Maka dari itu sebab itu kita perlu meresize image yang diupload agar menjadi seragam internal arti pembukaan memiliki ukuran (rata gigi dan tangga) nan sama.

#3 User Friendly, beragamnya user yang memiliki hak akses dalam menunggangi satu aplikasi berbasis web. Berarti beragam juga kemungkinan ukuran gambar yang akan diupload. Cukuplah, sebagai developer web, kita tidak kali terus-susukan mewatasi ukuran gambar yang akan diupload oleh user, karena kejadian itu tentunya menyebalkan bagi mereka. Dikarenakan mereka harus memperkecil matra buram yang kepingin diupload menggunakan photoshop alias tools lainnya.  Maka itu karena itu, kita harus menciptakan menjadikan fitur compress image saat diupload dan langsung di resize sesuai dengan dimensi image yang dibutuhkan. Dengan semacam itu, berapapun ukuran image yang akan diupload tidak bintang sartan problem dikarenakan image akan di compress kodrati oleh sistem sesuai dengan format image yang diperlukan.

Ok, saya rasa cukup tiga point belaka penjabaran tentang mengapa kita wajib mengresize image momen di upload. Sekarang kita masuk ke proses pembuatan.

Pertama-tama pasti saja anda harus mendownload codeigniter terlebih lalu. Hehe…,pastinya. Untuk mendownload codeigniter, silahkan download di official websitenya www.codeigniter.com.

Disini saya menggunakan Codeigniter 3.1.3.

Ok, Lakukan proses pembuatannya silahkan ikuti langkah berikut:

Dapatkan potongan harga 75% kelongsong hosting dan gratis domain + extra diskon 5% dengan menggunakan kupon: MFIKRI

Kiriman Saat ini.!

1. Bikin database dan tabel dengan mengeksekusi query berikut:

CREATE DATABASE db_upload; USE db_upload;  CREATE TABLE tbl_galeri( id INT PRIMARY KEY AUTO_INCREMENT, kop VARCHAR(50), gambar VARCHAR(40) )ENGINE=INNODB;
      

2. Install codeigniter

Extract codeigniter ke
www
(jika menunggangi wampserver) atau
htdocs
(jika memperalat XAMPP). Kemudian rename project codeigniter engkau sesuai dengan project Anda. Disini pencatat memberi nama
ci_resize.

Setelah installasi, buat folder assets di dalam ci_resize dan bikin folder images didalam folder assets. Sehingga terbantah struktur project kita seperti berikut:

aplication

assets

      images

system

ambillah, folder images ini nantinya kita gunakan untuk menampar images yang di upload.

3. Konfigusai bilang file berikut:

Buka application/config/autoload.php atur menjadi seperti mana berikut:

$autoload['libraries'] = array('database'); $autoload['helper'] = array('url');
      

Bentang application/config/config.php dan atur menjadi seperti berikut:

$config['base_url'] = 'http://localhost/ci_resize/';

Anak bungsu urai application/config/database.php

$active_group = 'default'; $query_builder = TRUE;  $db['default'] = array( 	'dsn'	=> '', 	'hostname' => 'localhost', 	'username' => 'root', 	'password' => '', 	'database' => 'db_upload', 	'dbdriver' => 'mysqli', 	'dbprefix' => '', 	'pconnect' => FALSE, 	'db_debug' => (ENVIRONMENT !== 'production'), 	'cache_on' => FALSE, 	'cachedir' => '', 	'char_set' => 'utf8', 	'dbcollat' => 'utf8_general_ci', 	'swap_pre' => '', 	'encrypt' => FALSE, 	'compress' => FALSE, 	'stricton' => FALSE, 	'failover' => array(), 	'save_queries' => TRUE );
      

4. Buat eksemplar dengan nama M_upload.php dengan coding sebagai berikut:

<?php class M_upload extends CI_Model{  	function simpan_upload($judul,$tulang beragangan){ 		$hasil=$this->db->query("INSERT INTO tbl_galeri(judul,gambar) VALUES ('$kop','$rancangan')"); 		return $hasil; 	} 	 }
      

5. Buat controller dengan label Upload.php dengan kode sebagai berikut:

<?php  class Upload extends CI_Controller{ 	function __construct(){ 		parent::__construct(); 		$this->load->model('m_upload'); 		$this->load->library('upload'); 	}   	function index(){ 		$this->load->view('v_upload'); 	}  	function upload_image(){ 		$config['upload_path'] = './assets/images/'; //path folder 	    $config['allowed_types'] = 'gif|jpg|png|jpeg|bmp'; //type yang dapat diakses bisa engkau sesuaikan 	    $config['encrypt_name'] = TRUE; //Enkripsi nama yang terupload  	    $this->upload->initialize($config); 	    if(!empty($_FILES['filefoto']['name'])){  	        if ($this->upload->do_upload('filefoto')){ 	            $gbr = $this->upload->data(); 	            //Compress Image 	            $config['image_library']='gd2'; 	            $config['source_image']='./assets/images/'.$gbr['file_name']; 	            $config['create_thumb']= FALSE; 	            $config['maintain_ratio']= FALSE; 	            $config['quality']= '50%'; 	            $config['width']= 600; 	            $config['height']= 400; 	            $config['new_image']= './assets/images/'.$gbr['file_name']; 	            $this->load->library('image_lib', $config); 	            $this->image_lib->resize();  	            $gambar=$gbr['file_name']; 				$judul=$this->input->post('xjudul'); 				$this->m_upload->simpan_upload($judul,$gambar); 				echo "Image berhasil diupload"; 			} 	                  	    }else{ 			echo "Image yang diupload zero"; 		} 				 	}  }
      

6. Untuk view dengan tanda v_upload.php dengan kode bak berikut:

<!DOCTYPE html> <html> <head> 	<title>Upload dan resize image</title> </head> <body> 	<form action="<?php echo base_url().'index.php/upload/upload_image'?>" method="post" enctype="multipart/form-data"> 		<input type="text" name="xjudul" placeholder="Kop"> 		<input type="file" name="filefoto"> 		<button type="submit">Upload</button> 	</form> </body> </html>
      

7. Jalankan project dengan mengunjungi URL berikut:

http://localhost/ci_resize/index.php/upload

Akuisisi kepala karangan dan image kemudian klik tombol upload. Jikalau muncul pesan image bertelur diupload, berarti bertelur.

Cek image yang diupload di folder
assest/image
dan bandingkan ukuran image sebelum diupload dengan nan telah diupload buat melihat perbedaannya.

Related: Latihan Komplet CodeIgniter 4 Untuk Pemula

Sekian tutorial tentang
Upload dan resize image menunggangi codeigniter. Jangan lupa share siapa senggang pelajaran ini bermanfaat bagi teman Anda!

Dapatkan diskon 75% kemasan hosting dan gratis domain + extra potongan harga 5% dengan menggunakan kupon: MFIKRI

Order Sekarang.!

Download Source

Source: https://mfikri.com/artikel/Upload-dan-resize-image-menggunakan-codeigniter.html