TELAH DIBUKA !!!

Toko Ebook Tutorial "RosihanAri.Net"


Free Ebook Tutorial from Rosihan Ari's Blog

Tutorial Javascript | Tutorial PHP | Tutorial AJAX | Tutorial CSS | Tutorial FPDF | Tutorial Wordpress | Tutorial Java SE


 photo 300x250_zpsff09f9e7.gif
Slot iklan tersedia, pasang iklan di atas

Ebook yang direkomendasikan untuk Anda
Ebook Panduan Praktis OOP di PHP

Membuat Script PHP untuk Kompresi File ZIP


September 27th, 2008 | by rosihanari | Cetak Artikel Cetak Artikel

GampSMS SMS Gateway

Dengan PHP, kita bisa membuat aplikasi sederhana untuk kompresi file ke dalam bentuk ZIP.

Mengapa kita harus bisa membuat script untuk kompresi file ini, toh di hampir setiap komputer sudah ada software kompresi, meskipun hasil crack-crack an :-) . Untuk menjawab ini, saya ambil contoh penerapannya. Kalau Anda merupakan adsense publisher, maka setiap interval waktu tertentu Anda akan dikirimi file report earning dalam format CSV yang terkompresi dalam bentuk ZIP file. Apakah setiap pegawai Google Adsense melakukan kompresi setiap laporannya dan mengirimkan satu-persatu file report ini ke semua publishernya secara manual via email? Saya yakin tidak… Mekanisme ini dibuat secara otomatis dengan menggunakan program atau script. Nah… ini salah satu contoh saja alasan mengapa kita juga harus bisa membuat aplikasi untuk kompresi file ZIP via web.

Alasan yang lain… misalkan Anda orang yang ‘baik’ dan tidak ingin menggunakan software crack-crack an untuk kompresi, maka Anda bisa membuat sendiri aplikasinya dengan PHP :-)

Pada tutorial ini akan dibahas bagaimana cara membuat script PHP untuk melakukan kompresi file ZIP. Skenario untuk studi kasus yang diambil di sini adalah: user nantinya akan memilih file yang akan dikompresi melalui form, setelah itu ia mengklik tombol submit, dan hasilnya akan diperoleh file kompresi ZIP dari file yang dipilih tadi. Simple bukan…

Oya… untuk PHP yang dijalankan di Windows OS, pastikan Anda telah mengaktifkan php_zip.dll di file php.ini. Bagaimana caranya? Caranya adalah buka terlebih dahulu file php.ini, bila Anda menggunakan AppServ caranya klik START > AppServ > Configuration Server > PHP Edit The php.ini Configuration File. Selanjutnya cari baris extension=php_zip.dll. Pastikan tidak ada tanda titik koma (;) di depan baris tersebut. Bila sudah, simpan kembali php.ini, dan restart Apache (Web Server).

Nah… sekarang kita mulai membuatnya.

Pertama-tama kita buat form untuk memilih file yang akan dikompresi.

<form enctype="multipart/form-data" action="kompresi.php" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="2000000" />
Pilih file yang akan dikompresi <input name="file" type="file" />
<input type="submit" name="submit" value="Submit" />
</form>

Selanjutnya kita buat script kompresi.php nya.

<?php

$namaFile = $_FILES['file']['name'];
$tmpName  = $_FILES['file']['tmp_name'];

$fp      = fopen($tmpName, 'r');
$isiFile = fread($fp, filesize($tmpName));
fclose($fp);

$zip = new ZipArchive();
$fileKompresi = $namaFile.".zip";

$kompresi = $zip->open($fileKompresi, ZIPARCHIVE::CREATE);
if ($kompresi)
{
   $zip->addFromString($namaFile, $isiFile);
   $zip->close();
   echo "Kompresi Sukses";
}
else echo "Kompresi Gagal";
?>

Keterangan:

  • Baris ke-3 digunakan untuk mendapatkan nama file yang akan dikompresi. Nama file ini nanti akan digunakan untuk memberi nama file hasil kompresi (lihat baris ke-11).
  • Baris ke-4 digunakan untuk menyimpan temporary file yang akan dikompresi. File temporary ini nantinya akan dibaca isinya (baris ke-6 s/d 8).
  • Baris ke-10 digunakan untuk membuat obyek ZipArchive.
  • Baris ke-13 digunakan untuk membuat file kompresi.
  • Baris ke-14 melakukan pengecekan, bila file kompresi berhasil dibuat maka isi file asli yang dibaca akan dimasukkan ke dalam file kompresi. Sedangkan bila gagal, muncul pesan kegagalan.

Dari contoh ini, Anda bisa kembangkan sendiri bagaimana jika kita ingin mengkompresi beberapa file menjadi satu.

OK… mudah-mudahan info bermanfaat.


Baca Juga Artikel Terkait
Script PHP untuk Membuat Report Format MS. Excel
Membuat Script PHP untuk Rekap Data dari Data Mentah
Script PHP untuk Menampilkan Data dalam Tabel dengan Warna Baris Selang-seling
Script PHP untuk Menghapus Data Via Panel di Tabel
Membuat Thumbnail Image dengan Script PHP


 photo 300x250_zpsff09f9e7.gif
Slot iklan tersedia, pasang iklan di atas


Kata kunci: PHP -


Ada 16 komentar dalam artikel ini.



  1. hardi says:

    Pak Ari,
    scriptnya bisa jalan, cuma setiap kompres PDF file atau JPG file di belakang nama filenya ada .pdf atau .jpg, shg waktu mau buka filenya ga bisa Pak Ari, mohon bimbingannya pak. saya sudah coba str_replace di nama fila nya ga bisa juga. trims Pak sebelumnya

  2. bayu says:

    Mas Ari yg baik,
    tolong donk sekalian ks contoh untuk yg multiple kompresnya. karena saya sudah coba berulang kali, dan hasilnya selalu gagal.
    mohon pencerahannya mas. trm ksh sebelumnya.



 

Komentar/pertanyaan Anda!

Mohon maaf, komentar/pertanyaan yang menggunakan email palsu atau komentar bernada negatif, cemooh, umpatan, cacian atau sejenisnya secara otomatis akan terhapus karena dianggap spam dan tidak akan tampil

Dimohon jangan pula memasukkan code program dalam bentuk apapun ke dalam komentar karena akan dianggap spam.

Mohon maaf jika seandainya ada beberapa pertanyaan Anda yang tidak direspon atau ditanggapi mengingat banyaknya komentar yang masuk dan keterbatasan kemampuan/ilmu saya dalam menjawab pertanyaan satu persatu. Saya harap Anda bisa memahami dan memakluminya.

Semua komentar atau pertanyaan yg masuk tidak akan langsung tampil di halaman ini, karena akan dimoderasi dahulu.


*