Tutorial Upload dan Download File Dari Galeri Menggunakan Codeigniter
Upload adalah proses transmisi sebuah file dari sebuah komputer ke sistem komputer yang lainnya dengan arah yang berkebalikan dengan download. Dari internet, user dapat melakunan proses upload dimana user mengirimkan file ke komputer lain yang memintanya.
Sedangkan download adalah proses transmisi sebuah file dari sebuah sistem komputer ke sistem komputer yang laiinnya. Dari internet, user yang melakukan proses download adalah proses dimana user meminta/request sebuah file dari sebuah komputer lain (website, server, atau lainnya) dan menerimanya.
Baca juga:
- Tutorial Instalasi PHP Framework Codeigniter
- Cara Menampilkan Database Dalam CodeIgniter
- Tutorial CRUD di Framework Codeigniter
Berikut ini penulis akan memberikan contoh program untuk meng-upload dan men-download file dengan menggunakan framework codeigniter:
1. Langkah pertama yaitu dengan membuat folder bernama file untuk menyimpan file yang telah diupload. Folder ini disimpan didalam C:\xampp\htdocs\CI.
2. Selanjutnya membuat file Upload.php didalam folder application – controllers.
<?php class upload extends CI_Controller { function __construct() { parent::__construct(); $this->load->helper(array('form', 'url','download')); } function index() { $data['error']= ‘ ‘; $data['message']=‘ ‘; $this->load->view('upload_form',$data); //untuk memanggil tampilan yang terdapat di folder view bernama upload_form.php $this->content(); } function do_upload() { $config['upload_path'] = './file/'; //nama folder untuk menyimpan file $config['overwrite'] = 'FALSE'; $config['allowed_types'] = 'gif|jpg|png|doc|docx|pdf|xls|xlsx|ppt|ppt|zip|rar'; $config['max_size'] = '2048'; //ukuran maksimal file $config['max_width'] = '0'; $config['max_height'] = '0'; $this->load->library('upload', $config); if ( ! $this->upload->do_upload()) { $data['error']= $this->upload->display_errors(); $data['message']='Upload Fail'; //pesan kesalahan $this->load->view('upload_form',$data); $this->content();} else{ $data['error']= ‘ ‘; $data['message']='Upload Success'; //pesan jika proses upload berhasil $this->load->view('upload_form',$data); $this->content();} } function content() { $file_path ='./file/'; $files = scandir($file_path); $files_array = array(); foreach($files as $key=>$file_name) { $file_name = trim($file_name); if($file_name != '.' || $file_name != '..') { if((is_file($file_path.$file_name))) { array_push($files_array,$file_name); } } } $data['files'] = $files_array; $this->load->view('view_files', $data); //tampilan untuk mendownload file } function download() { $this->load->library('zip'); //untuk mengkonversi kedalam zip $file_path = './file/'; $zip_file_name ='Download'; $selected_files = $_POST['files']; foreach($selected_files as $key=>$file) { $this->zip->read_file($file_path.$file); } $this->zip->download($zip_file_name); } } ?>
3. Membuat file tampilan dengan nama upload_form.php di dalam folder application – views.
<html> <head> <title>Upload Form</title> </head> <body> <?php echo $error;?> <?php echo $message;?><br> <?php echo form_open_multipart('upload/do_upload');?> <input type="file" name="userfile" size="20" /> <br> <input type="submit" value="upload" /> </form> <hr> </body> </html>
4. Kini saatnya untuk membuat tampilan untuk mendownload file tersebut dengan nama view_files.php di dalam folder application – views.
<html> <head> <title>Download File</title> <head> <body> <form action=<?php echo base_url().“index.php/Upload/download/";?> method="post"> <?php $no=1; foreach($files as $key=>$file_name) { echo "<tr><td>$no.</td><td><input type='checkbox' name='files[]' value=‘ “.$file_name.“ ‘ /></td><td>".$file_name."</td></tr><br>"; $no++; } ?> <br> <input value="Download" id="download" type="submit"> </form> </body> </html>
5. Buka browser Anda kemudian ketik URL http://localhost/ci/index.php/upload.
6. Pilih Choose File untuk memilih file dengan ekstensi gif|jpg|png|doc|docx|pdf|xls|xlsx|ppt|ppt|zip|rar. Nanti jika file tersebut berhasil diupload karena telah sesuai dengan ketentuan ekstensi tersebut.
7. File yang berhasil diupload tersebut akan masuk kedalam folder file di dalam folder C:\xampp\htdocs\CI.
8. Terkahir, untuk mendownload file tersebut dengan cara ketik url http://localhost/ci/index.php/upload/download.
Nah, itu tadi tutorial upload dan download dengan framework codeigniter. Di dalam pembuatan website, biasanya akan banyak menggunakan library seperti ini. Salam koding!