[ PHP – CI ] Script Download dalam Codeigniter

Assalamualaikum Wr Wb

Kali ini saya akan memberikan tutorial mengenai Script Download dalam codeigniter. Latar belakang penulisan ini adalah ketika saya ingin membuat sebuah download file dimana file yang di simpan di dalam server berbeda dengan nama yang di upload. Nama asli terdapat pada database, dan juga ketika di peng-uploadan file, nama file dirubah, sehingga tidak ada duplikasi data pada saat penguploadan.
Dalam kasus ini saya ingin mendownload kembali file tersebut dan merubahnya kembali dengan nama seperti asal. Didalam CI sudah terdapat library untuk merubahnya secara otomatis, karena berkaitan dengan MIME dan Header sebuah file. Oke baik langsung saja.

Load Helper ,

$this->load->helper(‘download’); atau bisa di taruh di autoload.php

Berikut adalah Instruksi atau manual dari Force_download

Keterangan :

  • $filename adalah nama file dimana nantinya kamu akan mendownload
  • $data adalah isi dari file tersebut
  • $set_mime adalah Booelan, dimana jika bernilai TRUE akan sesuai dengan ekstensi yang akan di beri nama

Contoh :

$data = ‘Farham Ganteng’;
$name = ‘mytext.txt’;
force_download($name, $data);

Dalam kasus ini, $data adalah isi dari file tersebut, oleh karena itu kita harus membaca terlebih dahulu file sebelum di download dengan menggunakan fungsi file_get_content yang ada di PHP, jadi tahapannya adalah kita mengambil file terlebih dahulu, kemudian memasukkannya pada force_download,

disarankan untuk memanggil function ini menggunakan AJAX


Sumber : https://www.codeigniter.com/userguide3/helpers/download_helper.html, http://www.technicalkeeda.com/codeigniter-tutorials/codeigniter-file-download-example

[ PHP ] MIME Type

MIME adalah singkatan dari Multipurpose Internet Mail Extension yg digunakan sebagai mekanisme untuk mengirim berbagai informasi seperti text, aplikasi, gambar, suara, video, dll agar browser tidak salah menterjemahkan konten yg diterima. Tidak hanya pada web, email pun juga menggunakan MIME.

Contoh:

Content-Type: text/plain

Browser akan membaca file tsb sebagai text biasa

Content-Type: image/jpeg

Browser akan membaca file tsb sebagai gambar jpeg

Tidak perduli apapun extensi yg diberikan oleh server, browser cuma mengenali konten berdasarkan MIME Type yg dikirim oleh server.

Pada Apache, MIME Type dan extensinya dikonfigurasi pada file mime.types. Pada PHP juga ditambahkan baris berikut agar web server menterjemahkan file2 berekstensi .php sebagai aplikasi web:

AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3

Beberapa MIME Type juga dapat dilihat di:
http://www.mimetype.org/
http://www.iana.org/assignments/media-types/

Sumber : http://www.pasarhosting.com/blog/item/content/menambahkan-mime-types-di-windows-pleks/

[ PHP ] Mengatur Maksimal Upload pada PHP dalam Apache Webserver

Assalamualaikum Warahmatullahi Wabarokatuh

Berikut saya akan menulis tutorial untuk mengatur maksimal Upload pada PHP dengan Webserver Apache pada Debian 8.

PHP has several configuration options to limit resources consumed by scripts. By default, PHP is set to allow uploads of files with a size of 2MB or less.

Kemudian Edit File php.ini, yang berada pada

/etc/php5/apache2/php.ini
dan cari tag dengan nama


memory_limit = 32M
upload_max_filesize = 24M
max_file_uploads= 30M
post_max_size = 32M

Kemudian Restart Apache