Cara Ekspor Data MySQL ke Excel Menggunakan PHP


Cara Ekspor Data MySQL ke Excel Menggunakan PHP
Cara Ekspor Data MySQL ke Excel Menggunakan  PHP. Sumber : blog root93


Pada phpMyAdmin sebenarnya kita bisa membackup data dengan mudah kedalam format excel (CSV), namun tentu saja akan jauh lebih mudah jika kita menyediakan fasilitas ekspor tersebut secara langsung pada aplikasi PHP yang kita bangun, sehingga pengguna bisa dengan mudah untuk melakukan ekspor data dari aplikasi php tanpa harus perlu membuka phpMyAdmin.

Ekspor Database MySQL ke Excel menggunakan PHP adalah merupakan salah satu contoh keperluan akan data atau backup data dalam bentuk file lain, sehingga data yang telah terekspor tersebut bisa digunakan, diatur kembali atau disimpan untuk kebutuhan tertentu.

Baca juga :  Cara Impor Excel ke MySQL Menggunakan PHP

Menyiapkan Database

Dalam proses export data mysql ke excel menggunakan php ini saya akan mencontohkan bagaimana melakukan backup sebuah data pada sebuah tabel didalam database MySQL. Nanti Anda bisa buat sebuah database baru dengan sebuah tabel yang didalamnya sudah memiliki data. Anda bisa membuat sebuah tabel dengan data sederhana atau bisa jalankan query berikut 

CREATE TABLE `tbl_info` (
  `id` int(11) NOT NULL,
  `name` varchar(50) NOT NULL,
  `description` varchar(50) NOT NULL,
  `date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data untuk tabel `tbl_info`
--

INSERT INTO `tbl_info` (`id`, `name`, `description`, `date`) VALUES
(1, 'Wina Faujiah', 'Mahasiswi Kedokteran', '2019-07-03 13:05:47'),
(2, 'Sena Duta', 'Mahasiswa Hukum', '2019-07-03 13:05:47'),
(3, 'Ridwan Utara', 'Mahasiswa Pertanian', '2019-07-03 13:05:47'),
(4, 'Dini Andini', 'Mahasiswi Sastra Bahasa', '2019-07-03 13:05:47'),
(5, 'Kania', 'Mahisiswi Teknik Sipil', '2019-07-03 13:05:47');

--
-- Indexes for dumped tables
--

--
-- Indexes for table `tbl_info`
--
ALTER TABLE `tbl_info`
  ADD PRIMARY KEY (`id`);

--
-- AUTO_INCREMENT for dumped tables
--

--
-- AUTO_INCREMENT for table `tbl_info`
--
ALTER TABLE `tbl_info`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;

Ekspor Database MySQL ke Excel

Sebelum mencoba mempratikannya, nanti Anda download terlebih dahulu PHPExcel, simpan phpexcel tersebut pada folder projek masing – masing . Selanjutnya Anda bisa meniru contoh menyusun kodenya seperti berikut :
<?php
//definisikan koneksi database
 $koneksi=mysqli_connect("localhost","root","","test_import");
 //arahkan ke plugins php excel
 include('phpexcel/Classes/PHPExcel.php');
 //jalankan query, query bisa saja kompleks dengan parameter where atau ada iner join didalammnya tergantung kebutuhan
 $sql = "SELECT id, name, description  FROM tbl_info ";
 $perintah=mysqli_query($koneksi, $sql);
$objPHPExcel = new PHPExcel();
$objPHPExcel->getProperties()->setCreator("ROOT93")
                                          ->setLastModifiedBy("PPDB")
                                          ->setTitle("DATA JUDUL")
                                          ->setSubject("SUBJEK")
                                          ->setDescription("DESKRIPSI")
                                          ->setKeywords("PHPExcel php")
                                          ->setCategory("General");
// mulai dari baris ke 2
$row = 2;
 
// Mendefinisikan Judul Kolom
$objPHPExcel->setActiveSheetIndex(0)
            ->setCellValue('A'.$row, 'ID')
            ->setCellValue('B'.$row, 'NAME')
            ->setCellValue('C'.$row, 'DESCRIPTION');
   ;
            
          


$row++; // Selanjautnya set nilainya masing - masing
while( $data = mysqli_fetch_array($perintah)){
      $objPHPExcel->setActiveSheetIndex(0)
            ->setCellValue('A'.$row, $data['id'])
            ->setCellValue('B'.$row, $data['name'])
            ->setCellValue('C'.$row, $data['description']); 
            
            
     $row++; // pindah ke row bawahnya ($row + 1)
      
}

$objPHPExcel->getActiveSheet()->setTitle('BACKUP DATA SISWA PPDB');
$objPHPExcel->setActiveSheetIndex(0);
 
 
// Download (Excel2007)
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="JUDUL FILE.xlsx"');
header('Cache-Control: max-age=0');
// If you're serving to IE 9, then the following may be needed
header('Cache-Control: max-age=1');
// If you're serving to IE over SSL, then the following may be needed
header ('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past
header ('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); // always modified
header ('Cache-Control: cache, must-revalidate'); // HTTP/1.1
header ('Pragma: public'); // HTTP/1.0
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); 
ob_end_clean(); 
$objWriter->save('php://output');
exit;
 
?>

Simpan file tersebut misal dengan nama ekspor.php. Ketika Anda mengakses file ekspor.php maka dengan secara otomatis akan muncul sebuah file excel yang perlu Anda simpan

[ DOWNLOAD SCRIPT ]

Cara Kedua Ekspor Database Mysql ke Excel Dengan PHP Tanpa Plugins

Cara kedua adalah eksport database mysql ke excel dengan php namun tanpa menggunakan plugins php excel. Cara ini terbilang lebih mudah dan gampang. Sederhananya nanti kalian bisa melakukan koneksi database, menjalankan session didalam file php yang bertugas untuk melakukan backup.

Jadi hanya tinggal melakukan query seperti biasa, selanjutnya didalam file Anda perlu mendefiniskan bahwa file tersebut akan di set ke dalam konten tipe excel. Anda bisa menggunakan parameter seperti berikut ini :

header("Content-type: application/vnd-ms-excel");
header("Content-Disposition: attachment; filename=Siswa.xls");

Contoh lengkapnya :
Contoh 1

<?php

//parameter koneksi
$host="localhost";
$user="root";
$pass="";
$db="db_eksport";
$koneksi=mysqli_connect($host, $user, $pass, $db);
if($koneksi==false):
      die("Gagal melakukan koneksi".mysqli_connect_error());
endif;

?>
<html>
<head>
      <title>Export Database MySQL ke Excel Menggunakan PHP - ROO93</title>
</head>
<body>
<?php
header("Content-type: application/vnd-ms-excel");
header("Content-Disposition: attachment; filename=Siswa.xls");
?>
<table border="1">
             <tr>
                  <th>No</th>
                  <th>NISN</th>
                  <th>Nama</th>
                 
            </tr>           
          
            <?php 
            $sql="SELECT * FROM ekspor_database";
            $perintah=mysqli_query($koneksi,$sql);           
            if(mysqli_num_rows($perintah)>0){
                  while($data=mysqli_fetch_array($perintah)){
            ?>
      
      <tr>
            <td><?php echo $data['id']; ?></td>
            <td><?php echo $data['nisn'];?></td>
             <td><?php echo $data['nama'];?></td>
            
      </tr>
            <?php      
            }

            }else{
                die("Belum ada data");
            }

          

            ?>
</table>
</body>
</html>

Dalam percobaan localhost ini berhasil dan berfungsi dengan baik, namun jika contoh file diatas tidak menghasilkan output excel melainkan ditampilkan dalam web page html biasa, maka Anda perlu menaruh parameter header, sebelum file koneksi ke database. Lihat contoh berikut  :

Contoh 2

<?php
header("Content-type: application/vnd-ms-excel");
header("Content-Disposition: attachment; filename=Siswa.xls");
//parameter koneksi
$host="localhost";
$user="root";
$pass="";
$db="db_eksport";
$koneksi=mysqli_connect($host, $user, $pass, $db);
if($koneksi==false):
      die("Gagal melakukan koneksi".mysqli_connect_error());
endif;

?>
<html>
<head>
      <title>Export Database MySQL ke Excel Menggunakan PHP - ROO93</title>
</head>
<body>

<table border="1">
             <tr>
                  <th>No</th>
                  <th>NISN</th>
                  <th>Nama</th>
                 
            </tr>           
          
            <?php 
            $sql="SELECT * FROM ekspor_database";
            $perintah=mysqli_query($koneksi,$sql);           
            if(mysqli_num_rows($perintah)>0){
                  while($data=mysqli_fetch_array($perintah)){
            ?>
      
      <tr>
            <td><?php echo $data['id']; ?></td>
            <td><?php echo $data['nisn'];?></td>
             <td><?php echo $data['nama'];?></td>
            
      </tr>
            <?php      
            }

            }else{
                die("Belum ada data");
            }

          

            ?>
</table>
</body>
</html>

[ Download Source Code - Contoh -2 ]


0 Response to "Cara Ekspor Data MySQL ke Excel Menggunakan PHP"

Post a Comment

Komentar yang Anda kirim akan terlebih dahulu di moderasi oleh Admin

mahjongways menghadirkan evolusi visual digital melalui perpaduan animasi adaptif dan teknologi antarmuka modernintegrasi teknologi real time mengubah cara platform digital mengelola interaksi dan respons penggunaperan random number generator menjaga independensi hasil pada sistem permainan digital modernmengenal cara mahjongways mengembangkan pengalaman interaktif melalui sistem respons simbol dan desain grafis digitalarsitektur microservices menjadi fondasi penting dalam membangun infrastruktur platform digital yang lebih fleksibelmengenal volatilitas dan distribusi hasil dalam karakteristik matematis permainan digital berbasis rngmahjong ways dan evolusi budaya digital melalui perpaduan warisan tradisional dengan teknologi interaktif moderntransformasi infrastruktur digital memperlihatkan peran penting otomatisasi dalam menjaga stabilitas sistemmahjongways memperlihatkan perkembangan desain permainan digital melalui optimalisasi animasi dan transisi visualgame pg soft dan perubahan standar desain visual dalam industri hiburan digitalmengapa game pg soft sering dibahas dalam perkembangan permainan berbasis smartphonedi balik game pg soft bagaimana teknologi animasi membentuk pengalaman penggunagame pg soft dalam sorotan perbedaan antara fitur interaktif dan mekanisme acakketika tampilan game pg soft menjadi bahan diskusi tentang psikologi warnamengulas game pg soft dari sisi perkembangan antarmuka dan kenyamanan navigasigame pg soft dan tantangan membedakan informasi resmi dari klaim komunitasbagaimana game pg soft mengadaptasi elemen budaya dalam konsep visual permainangame pg soft dan pentingnya memahami perbedaan antara rtp serta hasil sesaatfenomena konten video pendek yang membentuk persepsi publik tentang game pg softgame online dan fenomena munculnya pemimpin komunitas dari kalangan pemain biasamengapa sistem reputasi menjadi bagian penting dalam interaksi game onlineketika game online menghadirkan tantangan baru dalam menjaga etika komunikasiperubahan pola kerja sama tim menjadi sorotan dalam perkembangan game onlinegame online dan peran sistem moderasi dalam membangun lingkungan bermain yang sehatbagaimana game online menghubungkan komunitas kecil menjadi jaringan globalfenomena pemain game online yang mengembangkan keterampilan organisasi komunitasgame online dalam kajian perubahan kebiasaan sosial di ruang virtualmengapa transparansi sistem peringkat menjadi perhatian dalam komunitas game onlineketika game online menjadi ruang kreatif bagi pembuat konten dan pemaingame digital dan perubahan cara pengembang membangun dunia virtual yang realistismengapa teknologi haptic feedback menjadi pembahasan menarik dalam game digitalketika game digital menghadirkan karakter yang bereaksi terhadap keputusan pemainperan pencahayaan dinamis dalam membangun suasana permainan game digitalgame digital dan tantangan menjaga identitas seni di tengah perkembangan aibagaimana sistem penyimpanan cloud mengubah pengalaman mengakses game digitalfenomena game digital yang mengangkat cerita rakyat menjadi petualangan interaktifgame digital dalam sorotan perubahan cara studio indie mengembangkan karyamengapa pelestarian game digital lama menjadi topik penting dalam arsip teknologiketika game digital digunakan untuk mengenalkan konsep sains melalui simulasigates of olympus dan kisah mitologi zeus yang diadaptasi menjadi hiburan digitalmengapa sweet bonanza menggunakan tema permen dalam membangun identitas visual gamestarlight princess dan peran karakter fantasi dalam perkembangan desain slot modernfenomena big bass bonanza yang menggabungkan tema memancing dengan mekanisme permainansugar rush 1000 dan cara animasi warna warni membentuk pengalaman visual penggunamengenal the dog house megaways dari sisi desain karakter dan variasi fitur gamegates of hades mengangkat dunia bawah mitologi yunani ke dalam konsep permainan digitaldi balik sweet rush bonanza ada konsep pengali yang menarik dibahas secara matematisfortune of olympus dan perbedaan desain mekanisme permainan bertema dewa yunanimengapa gates of olympus 2500 menarik dikaji dari sisi evolusi seri game digital