Sunday, February 21, 2010

PHP HTTP Header Download

Biasa nya file yang berekstensi text, html, image (jpeg, gif, dll)  bila diklik secara otomatis isi file tersebut akan muncul pada browser.

Pada php file-file tersebut dapat menjadi sebuah file yang dikenalin sebagai file download seperti halnya file-file mp3, zip, dan sebagainya

PHP memiliki cara untuk melalukan itu dengan memberkian header yang dibutuhkan, seperti sintak dibawah ini
<?php
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="photo-download.jpg');
header('Content-Transfer-Encoding: binary');
$file = readfile('photo.jpg');
echo $file;
?>
Penjelesannya adalah sebagai berikut:

Header untuk memberikan tahukan pada broswer bahwa content nya berupa file application yang di download
header('Content-Type: application/octet-stream');

Header untuk memberikan tahukan pada broswer bawah nama file yang akan di download bernama photo-download.jpg
header('Content-Disposition: attachment; filename="photo.jpg');

Header untuk memberikan tahukan pada browser berupa file binary.
header('Content-Transfer-Encoding: binary');

Readfile adalah function untuk membaca isi file sebagai contoh diatas file yang dibaca adalah photo.jpg
$file = readfile('photo.jpg')

Kemudian isi $file tersebut di echo
echo $file

Maka hasilnya akan muncul seperti gambar dibawah ini:

1 comment: