Export Data dari Database MySQL ke Excel dengan PHP

source code dapat di copy dengan mengarahkan cursor ke area source code kemudian mengklik tombol dengan icon kertas putih dan <>
Membangun Aplikasi Website dengan Server side scripting seperti PHP kita akan banyak bekerja dengan database bahkan bisa dikatakan tidak akan pernah lepas dari database. sebab siapa yang sanggup mengelola website static dimana untuk merubah konten kita harus merubah coding. Dengan database memungkinkan kita membuat aplikasi website yang dinamis.

Berbicara tentang website dinamis tentu saja hal itu erat kaitannya dengan kemudahan yang ditawarkan seperti merubah tampilan tak perlu lagi mengedit kode template website tersebut selain itu data-data pada website dinamis akan tersimpan didatabase. Berangkat dari hal itu, disini saya akan berbagi trik bagaimana mengeksport data dari tabel database menjadi file excel.

1. Pertama-tama saya asumsikan anda sudah memiliki sebuah tabel dan beberapa data dalam database anda

Export Data dari Database MySQL ke Excel dengan PHP

2. Lakukan koneksi ke Database dengan contoh script dibawah ini sesuaikanlah dengan milik anda. simpan dengan dengan nama koneksi.php
<?php 
mysql_connect("localhost","root","root");
mysql_select_db("biodata");
?>
3. Langkah berikutnya adalah membuat sebuah halaman yang berisi sebuah form dan button dimana aksinya akan melakukan export data.
<html>
<head>
 <title>Export Excel</title>
</head>
 
 <body>
 <a href="export.php"><input type="button" value="Export/Download"/></a>
 </body>

</html>
4. Tahap terakhir yang paling penting adalah membuat sebuah file yang akan melakukan proses export data. Script yang saya gunakan adalah sebagai berikut. simpan dengan nama export.php simpan didalam folder projek anda.
<?PHP
  // Original PHP code by Chirp Internet: www.chirp.com.au
  // Please acknowledge use of this code by including this header.
  include "koneksi.php";
  function cleanData(&amp;$str){
    $str = preg_replace("/\t/", "\\t", $str);
    $str = preg_replace("/\r?\n/", "\\n", $str);
    if(strstr($str, '"')) $str = '"' . str_replace('"', '""', $str) . '"';
  }

  // Nama Hasil Export
  $filename = "hasil_export_" . date('dmY') . ".xls";

  header("Content-Disposition: attachment; filename=\"$filename\"");
  header("Content-Type: application/vnd.ms-excel");

  $flag = false;
  $result = mysql_query("SELECT * FROM data ORDER BY id") or die('Query failed!');
  while(false !== ($row = mysql_fetch_assoc($result))) {
   if(!$flag) {
      echo implode("\t", array_keys($row)) . "\r\n";
      $flag = true;
    }
    array_walk($row, 'cleanData');
    echo implode("\t", array_values($row)) . "\r\n";
  }
  exit;
?>
Hasil yang saya peroleh dapat anda lihat pada gambar file excel berikut ini. Bisa dilihat bahwa datanya sama dengan gambar screenshoot data di mysql pada gambar diatas.

Export Data dari Database MySQL ke Excel dengan PHP
source code dapat di copy dengan mengarahkan cursor ke area source code kemudian mengklik tombol dengan icon kertas putih dan <>

Share this

Related Posts

Previous
Next Post »

3 comments

comments
14 March 2015 at 00:34 delete

thanks banget mas... btw bisa nda yah, pengaturan format baik itu format font, font size, untuk field dalam php itu sendiri ...? :)

Reply
avatar
13 July 2015 at 09:35 delete

terima kasih mas , atas bantuannya ,,,

Reply
avatar
5 January 2016 at 21:00 delete

Parse error: syntax error, unexpected 'amp' (T_STRING), expecting variable (T_VARIABLE) in D:\xampp\htdocs\perpus2\admin\proses_4.php on line 7

gak bisa.... tolong bantuannya

Reply
avatar

bantu kami untuk lebih baik; jika ada hal yang kurang jelas atau broken link silahkan masukan komentar anda kami akan segera menanggapi dan memperbaikinya. login ke akun gmail anda untuk menampilkan form komentar.