[Contoh 2] Membuat Laporan Export Data dari MySQL ke Excel terencoding dengan PHP (no-pear)

Jika dalam posting lalu http://bimosaurus.com/2012/04/09/contoh-1-membuat-laporan-export-data-dari-mysql-ke-excel-dengan-php-no-pear/ kita sudah belajar menggunakan php untuk melakukan export ke dalam file excel yang datanya diambil dari database, namun ternyata proses yang kita pelajari tersebut masih terdapat kekurangan. Kekurangannya yaitu bahwa data excel yang dihasilkan tidak terencoding dengan baik sebagaimana layaknya file excel. Excel yang dihasilkan hanyalah file text dalam bentuk table, yang disimpan sebagai xls atau excel spreadsheet. Untuk membuat exporting data dalam bentuk excel yang sebenarnya maka perlu tools yang berfungsi mengolah encoding data cell dan column ke dalam excel encoding sehingga data akan dapat di download dalam format excel. Dalam PHP-PEAR, fasilitas upload download excel ini jelas telah ada. Tutorial penggunaan PEAR menyusul. Kali ini kita akan belajar menggunakan fasilitas : php_writeexcel-0.3.0.tar.gz yang telah saya siapkan di http://bimosaurus.com/files/php_writeexcel-0.3.0.tar.gz.

Extractlah file tersebut ke dalam direktori yang anda suka. Kalau saya lebih suka memasukkan segala fasilitas ini ke dalam direktori libs. Sehingga akan terbentuk libs/php_writeexcel-0.3.0 . Untuk contoh scripting menggunaan php_writeexcel ini dasarnya adalah sebagai berikut :

 

 

Contoh data ini dapat dilihat di http://bimosaurus.com/demo/export1.php. Untuk posting selanjutnya akan dicoba menuangkan data MySQL ke bentuk XLS MS Excel.

Semoga Berguna

14 thoughts on “[Contoh 2] Membuat Laporan Export Data dari MySQL ke Excel terencoding dengan PHP (no-pear)

  1. wah… artikel yang sangat bagus.., yang saya mau tanya bagaimana script misalkan judul di merge menjadi 3 cell trus bagaimana cara format font dan border??

    1. Untuk penjelasan ini mungkin perlu satu tutorial lagi yang sekarang sudah saya antrikan untuk masuk dalam posting selanjutnya. PHPExcelWriter memiliki fasilitas untuk MERGE, FORMAT FONT dan sekaligus memberikan border. Namun secara ringkas akan coba dijelaskan di sini:

      1. Merge dapat dilakukan dengan menuliskan pada dua atau tiga cell yang dimaksud, dengan penggabungan fungsi write() dan write_blank(). Sebagai contoh adalah :

      2. Format Font merupakan satu opsi dalam fungsi write().

        Dengan $formatfont diset seperti berikut :

      3. Border juga merupakan salah satu bagian dalam fungsi write(). Untuk contohnya, mungkin akan dipost pada satu posting sendiri.

      Mohon ditunggu ya mas mungkin dalam 1-2 hari, terimakasih telah mengunjungi blog ini

  2. mengapa di xampp ver 1.7.4 tidak jalan ya? waktu kita buka file excel nya isi yg sbenar nya tdk ada tp yg tertulis di file tersebut pesan error semua error semua

    1. Bisakah error messagenya dishare disini? Tapi sangat besar kemungkinan errornya adalah berkaitan dengan Deprecated Function Syntax, yaitu Fungsi Syntax PHP yang tidak lagi digunakan di versi terbaru karena alasan krusial seperti security, bug, dan crashed. Sebagai solusi bisa dua cara, yaitu:

      • Membuat fungsi syntax secara manual
      • Downgrade PHP
      • Mengubah script atau mengganti script

      Dalam hal ini sepertinya lebih mudah di angka 1 atau 3. Lain kali akan saya share tentang hal itu :)

  3. Deprecated: Assigning the return value of new by reference is deprecated in D:\xampp\htdocs\latihanphp\write_excel\export.php on line 6

    Deprecated: Assigning the return value of new by reference is deprecated in D:\xampp\htdocs\latihanphp\write_excel\php_writeexcel-0.3.0\class.writeexcel_workbook.inc.php on line 170

    Deprecated: Assigning the return value of new by reference is deprecated in D:\xampp\htdocs\latihanphp\write_excel\php_writeexcel-0.3.0\class.writeexcel_workbook.inc.php on line 190

    Deprecated: Assigning the return value of new by reference is deprecated in D:\xampp\htdocs\latihanphp\write_excel\php_writeexcel-0.3.0\class.writeexcel_workbook.inc.php on line 192

    Notice: Undefined offset: 3 in D:\xampp\htdocs\latihanphp\write_excel\php_writeexcel-0.3.0\class.writeexcel_worksheet.inc.php on line 1209

  4. ��ࡱ�>�� �������� ������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������ l �Sheet1B�=�%r8X”1���Arial1���Arial1���Arial1���Arial1���Arial1� �Arial��� @� ��� @� ��� @� ��� @� ��� @� ��� @� ��� @� ��� @� ��� @� ��� @� ��� @� ��� @� ��� @� ��� @� ��� @� � @� � H� �����8�������������������������������3f������ff���f����������������������������������̙��̙3f�3���������fff����3f3�f333�3�3f33�333� ‘Sheet1 l �*+����”dXX�?�? #JUDUL diletakkan di kolom 1title baris 3 kolom 1title baris 3 kolom 2Ini Baris 4 Kolom ke 1Ini Baris 4 Kolom ke 2Ini Baris 5 Kolom ke 1Ini Baris 5 Kolom ke 2Ini Baris 6 Kolom ke 1Ini Baris 6 Kolom ke 2Ini Baris 7 Kolom ke 1Ini Baris 7 Kolom ke 2Ini Baris 8 Kolom ke 1Ini Baris 8 Kolom ke 2Ini Baris 9 Kolom ke 1Ini Baris 9 Kolom ke 2 Ini Baris 10 Kolom ke 1 Ini Baris 10 Kolom ke 2 Ini Baris 11 Kolom ke 1 Ini Baris 11 Kolom ke 2)�?(�?’�?&�?��> � Root Entry������������Book ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
    Warning: unlink(C:\Documents and Settings\admin\Local Settings\Temp\nam3C.tmp): Permission denied in D:\xampp\htdocs\latihanphp\write_excel\export.php on line 29

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">