export Mysql ke Excel dengan PHP

ada kalanya dalam membuat suatu aplikasi dibutuhkan suatu rekap data dalam bentuk excel, ndaahh,,supaya gak ribet dan spy gak convert atu2…mending langsung ajah ambil datanya dari mysql, trus diuprek2 pake PH…Ptrus jadi deh file dengan extension xls. langsung saja yah ane kasih contoh script nya dan apa2 ajah yg d butuhkan.

1. syarat 1: bisa konek ke database mysql (koneksi ok)

2. ini script nya :

<?php
include("koneksi.php");
$select = "select * from nama_tabel ";
$export = mysql_query($select);
$fields = mysql_num_fields($export);
for ($i = 0; $i < $fields; $i++) {
$header .= mysql_field_name($export, $i) . "\t";
}
while($row = mysql_fetch_row($export)) {
$line = '';
foreach($row as $value) {
if ((!isset($value)) OR ($value == "")) {
$value = "\t";
} else {
$value = str_replace('"', '""', $value);
$value = '"' . $value . '"' . "\t";
}
$line .= $value;
}
$data .= trim($line)."\n";
}
$data = str_replace("\r","",$data);
if ($data == "") {
$data = "n(0) record found!\n";
}
$tanggal=date("Ymd");
header("Content-type: application/x-msdownload");
header("Content-Disposition: attachment; filename=pendaftar_".$tanggal.".xls");
header("Pragma: no-cache");
header("Expires: 0");
print "$header\n$data";
?>

simpen file tersebut dengan nama terserah.php, terus panggil deh tuh file, ntar akan kluar dialog download untuk xls

inget!!koneksinya kudu bener yah,,n jangan lupa ganti “nama_tabel” nya..ok

semoga bermanfaat…

wassalamualaikum

alioke Avatar

11 responses to “export Mysql ke Excel dengan PHP”

  1. bigpoo Avatar

    pak bos…klo ga salah,itu kan bikin file excel baru dari hasil query yang d jalankan.
    klo misalnya hasil query itu mau d tambahkan ke data excel yang sudah ada bisa ga??

  2. falcon Avatar
    falcon

    bos mau tanya itu yg diganti cuma nama tabelnya aja?

  3. falcon Avatar
    falcon

    tau sintak ini gak? klo tau bisa tolong jelaskan dengan detail gak rincian sintak berikut ini? terima kasih
    // nama file
    $namaFile = “report.xls”;

    // Fungsi penanda awal file (Begin Of File) Excel
    function xlsBOF() {
    echo pack(“ssssss”, 0x809, 0x8, 0x0, 0x10, 0x0, 0x0);
    return;
    }

    // Fungsi penanda akhir file (End Of File) Excel
    function xlsEOF() {
    echo pack(“ss”, 0x0a, 0x00);
    return;
    }

    // Fungsi untuk menulis data (angka) ke cell excel
    function xlsWriteNumber($Row, $Col, $Value) {
    echo pack(“sssss”, 0x203, 14, $Row, $Col, 0x0);
    echo pack(“d”, $Value);
    return;
    }

    // Fungsi untuk menulis data (text) ke cell excel
    function xlsWriteLabel($Row, $Col, $Value ) {
    $L = strlen($Value);
    echo pack(“ssssss”, 0x204, 8 + $L, $Row, $Col, 0x0, $L);
    echo $Value;
    return;
    }

    // header file excel
    header(“Pragma: public”);
    header(“Expires: 0”);
    header(“Cache-Control: must-revalidate, post-check=0,
    pre-check=0”);
    header(“Content-Type: application/force-download”);
    header(“Content-Type: application/octet-stream”);
    header(“Content-Type: application/download”);

    // header untuk nama file
    header(“Content-Disposition: attachment;
    filename=”.$namaFile.””);

    header(“Content-Transfer-Encoding: binary “);

    // memanggil fungsi penanda awal file excel
    xlsBOF();

  4. andre Avatar

    Akhirnya… ada juga script yang bisa ane gunain…
    thanks pak..

  5. Agung Avatar
    Agung

    Kalo seumpama kita nampilin data tertentu menurut status data serta kategori datanya gmn bro?
    tolong bantuannya ya ? Terima kasih

  6. alioke Avatar

    to Agung, untuk menampilkan data tertentu, tinggal main di query nya saja
    karena dalam contoh tersebut saya menggunakan *, maka semua field yang ada d table di tampilkan, klo mau nampilin tertentu berdasarkan kondisi tertentu, kita tinggal main di $select = “select * from nama_tabel “;, kita oolah query sesuai kebutuhannya

  7. bilhasryramadhony Avatar
    bilhasryramadhony

    thanks tutorialnya

  8. adi pratama Avatar
    adi pratama

    Thanks mas broo membantu sekali

  9. Bona Avatar
    Bona

    thanks bro….berguna bgt scriptnya

Leave a Reply

Liyana Parker

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.