Kebetulan baru dapat project sebuah web untuk sebuah intansi. Di dalam web tersebut mengharuskan ada sebuah fasilitas upload dan download file. Untuk upload file itu sendiri sudah sangat terbiasa karena untuk upload file tersebut hampir-hampir mirip dengan upload gambar, hanya ekstensi file nya saja yang berubah. Atau jika kebetulan ekstensi file tersebut tidak ada, dapat ditambahkan ke dalam file mimes.php pada folder config seperti artikel yang sebelumnya.
Kemarin sempet kesulitan untuk membuat fasilitas download, karena artikel terkait fasilitas tersebut masih sedikit. Di forum-forum yang kemarin dicari juga masih jarang ditemukan, atau mungkin karena saya sendiri yang kebetulan gaptek menggunakan http://www.google.com.
Pada dasarnya semua helper sudah ada tutorialnya di dalam folder user_guide di dalam paketan CodeIgniter itu sendiri. Tapi saya terus terang kurang paham terhadap penjelasan dari user_guide itu sendiri. Untuk itu saya mencoba untuk membuat artikel ini dengan harapan dapat membantu teman-teman yang kebetulan mengalami kesultan yang sama yang pernah saya alami.
Disini saya akan mencontohkan misalnya saya mempunyai sebuah file dengan format pdf dengan nama download.pdf, file tersebut saya upload ke dalam folder upload di folder root. Kemudian di dalam controller pada index saya gunakan untuk memanggil view dengan nama download. Contoh:
class Download extends Controller {
function Download()
{
parent::Controller();
$this->load->helper('download');
}
function index()
{
$this->load->view('download');
}
}
Kemudian view yang saya gunakan:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Download Document</title> </head> <body> <a href="download/file">Download</a> </body> </html>
Maka jika link tersebut diklik maka akan menuju ke dalam controller download untuk fungsi file. Untuk itu di dalam controller download tersebut saya buat fungsi file:
$data = "Keterangan"; $name = base_url()."/upload/download.pdf"; force_download($name,$data);
Jadi ketika link download tersebut maka akan otomatis mendownload file yang ada di dalam folder upload tersebut. Semoga bermanfaat dan terima kasih

Mas, mau tanya mohon dibantu.
Mas kalo file dengan format pdf sudah di upload ke folder uploads.
dan untuk menampilkan list file memakai library pagination sudah tampil, tetapi sewaktu mengarahkan ke file pdf yang diminta untuk ditampilkan kok blank ? bagaimana
untuk menampilkannya ya mas?
Di alamatkan ke alamat upload nya. Misal q bikin base_url()=”http://localhost/upload/”. Kemudian di dalam folder root q bikin folder “uploads”. Maka untuk memanggil file upload tersebut base_url().”uploads/”.”nama file pdf”
mas bisa diperjelas..
sya jga lagi membuat pasilitas upload dan download
untuk uploadnya sudah bisa masuk ke folder upload
namun ketika ingin download sya ga bisa??..
unutk viewnya download sintaknya gmna mas??..
atau bisa kirim ke mail mas 😀
Misal di dalam Controller dengan nama download, aku buat fungsi:
function file($id)
{
$data = ‘Nama File :!’.$id;
$name = base_url().”/uploads/download/”.$id;
force_download($name, $data);
}
Pada controller variabel name menyimpan alamat folder tempat simpanan file tersebut. Varibel data hanya berupa keterangan dari file yang akan didownload tersebut.
Kemudian di dalam view aku buat link:
<a href="download/file/file1.pdf”>download
Ini berarti link download tersebut mengarah ke file pdf dengan nama file1. Jika diklilk maka confirm download akan muncul. Semoga lebih jelas