Cara Membuat Export Database Ke Excel

Export database ke Excel adalah salah satu aktivitas yang umum dilakukan di dunia pemrograman. Ada banyak cara untuk melakukan hal ini, dan pada artikel ini kita akan membahas beberapa cara untuk melakukan export database ke Excel menggunakan PHP dan MySQLi. Selain itu, kita juga akan membahas bagaimana cara import data dari Excel ke database MySQL.

Cara Export Database Ke Excel Dengan PHP dan MySQLi

Sebelum membahas langkah-langkah untuk melakukan export database ke Excel, Anda harus memastikan bahwa Anda memiliki koneksi database yang terhubung ke database MySQL Anda. Setelah itu, Anda dapat mengikuti langkah-langkah berikut:

Langkah 1 – Membuat Koneksi ke Database MySQL

Anda harus membuat koneksi ke database MySQL menggunakan fungsi mysqli_connect (). Berikut adalah contoh kode yang dapat Anda gunakan untuk membuat koneksi:

<?php
  $host = 'localhost';
  $user = 'root';
  $password = 'password';
  $database_name = 'nama_database';
  
  // membuat koneksi
  $connect = mysqli_connect($host, $user, $password, $database_name);
  
  // cek koneksi
  if (!$connect) 
    die('Koneksi gagal: ' . mysqli_connect_error());
  
  
  echo 'Koneksi berhasil';
?>

Langkah 2 – Membuat Query untuk Mendapatkan Data

Setelah Anda berhasil membuat koneksi ke database MySQL, selanjutnya Anda harus membuat query untuk mendapatkan data yang ingin Anda export ke file Excel. Berikut adalah contoh kode untuk membuat query:

<?php
  // buat query untuk mendapatkan data dari tabel database
  $query = "SELECT * FROM nama_tabel";
  
  // jalankan query
  $result = mysqli_query($connect, $query);
  
  // cek hasil query
  if (!$result) 
    die('Query gagal: ' . mysqli_error($connect));
  
  
  // ambil jumlah baris data
  $row_count = mysqli_num_rows($result);
  
  echo 'Data berhasil diambil, jumlah baris: ' . $row_count;
?>

Langkah 3 – Membuat File Excel dan Menulis Data

Setelah Anda berhasil mendapatkan data dari database, selanjutnya Anda harus membuat file Excel dan menulis data ke dalamnya menggunakan PHPExcel. Berikut adalah contoh kode untuk membuat file Excel dan menulis data:

<?php
  // load PHPExcel library
  require_once 'PHPExcel.php';
  
  // buat objek PHPExcel
  $excel = new PHPExcel();
  
  // set properties file Excel
  $excel->getProperties()->setCreator('Nama Anda')
        ->setLastModifiedBy('Nama Anda')
        ->setTitle('Judul File Excel')
        ->setSubject('Subject File Excel')
        ->setDescription('Deskripsi File Excel')
        ->setKeywords('contoh,file,excel');
  
  // tambahkan data ke worksheet
  $sheet = $excel->getActiveSheet();
  $sheet->setCellValue('A1', 'Nama Kolom 1');
  $sheet->setCellValue('B1', 'Nama Kolom 2');
  $sheet->setCellValue('C1', 'Nama Kolom 3');
  
  $row = 2;
  while ($data = mysqli_fetch_array($result)) 
    $sheet->setCellValue('A' . $row, $data['kolom_1']);
    $sheet->setCellValue('B' . $row, $data['kolom_2']);
    $sheet->setCellValue('C' . $row, $data['kolom_3']);
    
    $row++;
  
  
  // simpan file Excel
  $writer = new PHPExcel_Writer_Excel2007($excel);
  $writer->save('data.xlsx');
  
  echo 'Data berhasil diexport ke file Excel';
?>

Langkah 4 – Mendownload File Excel

Setelah file Excel berhasil dibuat, selanjutnya Anda harus memberikan link download ke file tersebut. Berikut adalah contoh kode untuk memberikan link download:

<?php
  header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
  header('Content-Disposition: attachment;filename="data.xlsx"');
  header('Cache-Control: max-age=0');
  
  $file = 'data.xlsx';
  readfile($file);
  
  echo 'File Excel berhasil didownload';
?>

Cara Import Data Excel Ke MySQL

Setelah kita berhasil melakukan export database ke Excel, kita sekarang akan membahas cara import data dari Excel ke database MySQL. Berikut adalah langkah-langkahnya:

Baca Juga :  Cara Membuat Rencana Mutu Kontrak Excel Xls

Langkah 1 – Membuat Form Upload File Excel

Untuk memungkinkan user mengupload file Excel, Anda harus membuat form upload file Excel menggunakan HTML dan PHP. Berikut adalah contoh kode untuk membuat form:

<form action="import.php" method="post" enctype="multipart/form-data">
  <input type="file" name="file_excel" /><br />
  <input type="submit" value="Import Data" />
</form>

Langkah 2 – Membuat Koneksi ke Database MySQL

Setelah user mengupload file Excel, selanjutnya kita harus membuat koneksi ke database MySQL menggunakan PHP. Berikut adalah contoh kode untuk membuat koneksi:

<?php
  $host = 'localhost';
  $user = 'root';
  $password = 'password';
  $database_name = 'nama_database';
  
  // membuat koneksi
  $connect = mysqli_connect($host, $user, $password, $database_name);
  
  // cek koneksi
  if (!$connect) 
    die('Koneksi gagal: ' . mysqli_connect_error());
  
  
  echo 'Koneksi berhasil';
?>

Langkah 3 – Membaca Data dari File Excel

Setelah koneksi ke database MySQL berhasil dibuat, selanjutnya kita akan membaca data dari file Excel yang diupload oleh user menggunakan PHPExcel. Berikut adalah contoh kode untuk membaca data dari file Excel:

<?php
  // load PHPExcel library
  require_once 'PHPExcel.php';
  
  // upload file Excel
  $file_excel = $_FILES['file_excel']['tmp_name'];
  
  // load file Excel
  $excel_reader = PHPExcel_IOFactory::createReaderForFile($file_excel);
  $excel_obj = $excel_reader->load($file_excel);
  
  // ambil data dari worksheet
  $worksheet = $excel_obj->getActiveSheet();
  $highest_row = $worksheet->getHighestRow();
  $highest_column = $worksheet->getHighestColumn();
  
  for ($row = 2; $row <= $highest_row; $row++) 
    $data['kolom_1'] = $worksheet->getCellByColumnAndRow(0, $row)->getValue();
    $data['kolom_2'] = $worksheet->getCellByColumnAndRow(1, $row)->getValue();
    $data['kolom_3'] = $worksheet->getCellByColumnAndRow(2, $row)->getValue();
    
    // simpan data ke database MySQL
    $query = "INSERT INTO nama_tabel (kolom_1, kolom_2, kolom_3) VALUES ('" . $data['kolom_1'] . "', '" . $data['kolom_2'] . "', '" . $data['kolom_3'] . "')";
    
    if (!mysqli_query($connect, $query)) 
      die('Query gagal: ' . mysqli_error($connect));
    
  
  
  echo 'Data berhasil diimport ke database MySQL';
?>

Langkah 4 – Menampilkan Hasil Import Data

Setelah data berhasil diimport ke database MySQL, kita akan menampilkan hasil import data ke dalam tabel HTML menggunakan PHP. Berikut adalah contoh kodenya:

<?php
  // buat query untuk mendapatkan data dari tabel database
  $query = "SELECT * FROM nama_tabel";
  
  // jalankan query
  $result = mysqli_query($connect, $query);
  
  // cek hasil query
  if (!$result) 
    die('Query gagal: ' . mysqli_error($connect));
  
  
  // ambil jumlah baris data
  $row_count = mysqli_num_rows($result);
  
  // tampilkan data dalam tabel HTML
  echo '<table border="1">';
  echo '<tr>';
  echo '<th>Kolom 1</th>';
  echo '<th>Kolom 2</th>';
  echo '<th>Kolom 3</th>';
  echo '</tr>';
  
  while ($data = mysqli_fetch_array($result)) 
    echo '<tr>';
    echo '<td>' . $data['kolom_1'] . '</td>';
    echo '<td>' . $data['kolom_2'] . '</td>';
    echo '<td>' . $data['kolom_3'] . '</td>';
    echo '</tr>';
  
  
  echo '</table>';
  
  echo 'Data berhasil diimport, jumlah baris: ' . $row_count;
?>

FAQ

Pertanyaan 1 – Apa itu PHPExcel?

Jawaban: PHPExcel adalah sebuah library PHP yang digunakan untuk membaca dan menulis file Excel. Dengan PHPExcel, Anda dapat membuat, membaca, dan memodifikasi file Excel dengan mudah.

Baca Juga :  Cara Mengambil Data Dari Kolom Di Sheet Lain Excel

Pertanyaan 2 – Bisakah saya menggunakan library PHPExcel untuk menggenerate file Excel di server?

Jawaban: Ya, Anda bisa. Dengan PHPExcel, Anda dapat membuat file Excel di server dan menggunakannya untuk keperluan Anda.

Video Tutorial: Cara Export dan Import Data dengan PHPExcel