Cara menggunakan php excel header

Cara menggunakan php excel header

kali ini saya akan share tutorial cara export data dari table ke excel dengan plugin dari PHPExcel, beberapa aplikasi menggunakan cara ini untuk membuat laporan, agar laporan yang ada dalam aplikasi bisa di lihat melalui excel, seperti dalam tutorial sebelumnya yang membahas tentang entri data dengan menggunakan plugin dari PHPExcel, pertama download terlebih dahulu plugin PHPExcel disini, jika sudah extract file rar yang sudah anda download tadi, kemudian buatlah projek dengan nama terserah anda dan copy folder Classes dari file rar yang sudah extract tadi, setelah itu buatlah database dengan nama terserah anda kemudian salin kode sql berikut dan jalankan di sql.

DROP TABLE IF EXISTS `users`;
CREATE TABLE `users` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nama` varchar(50) DEFAULT NULL,
  `alamat` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=20 DEFAULT CHARSET=latin1;

-- ----------------------------
-- Records of users
-- ----------------------------
INSERT INTO `users` VALUES ('1', 'Rohmat', 'Jlan. Pantura ciasem tengah');
INSERT INTO `users` VALUES ('2', 'Mimin', 'Jlan. Krajan timur');
INSERT INTO `users` VALUES ('3', 'Maman', 'Jlan. Krajan  barat');
INSERT INTO `users` VALUES ('4', 'Roni', 'Jlan. Mekar sari indah ');
INSERT INTO `users` VALUES ('5', 'Rachmat Hidayat', 'Jlan. Garuda 1');
INSERT INTO `users` VALUES ('6', 'Terzo', 'Jlan. Garuda 2');
INSERT INTO `users` VALUES ('7', 'carlos', 'Jlan. Garuda 3');
INSERT INTO `users` VALUES ('8', 'Dwi Susanti Mustari', 'Jlan. Garuda 4');
INSERT INTO `users` VALUES ('9', 'Desmond Satria Andrian', 'Jlan. Garuda 5');
INSERT INTO `users` VALUES ('10', 'Ka Ar', 'Jlan. Garuda 6');
INSERT INTO `users` VALUES ('11', 'Ka Keke', 'Jlan. Garuda 7');
INSERT INTO `users` VALUES ('12', 'Ka Deri', 'Jlan. Garuda 8');
INSERT INTO `users` VALUES ('13', 'Ka Rendy', 'Jlan. Garuda 9');
INSERT INTO `users` VALUES ('14', 'Ka Yanti', 'Jlan. Garuda 10');
INSERT INTO `users` VALUES ('15', 'Ka Nury', 'Jlan. Garuda 11');
INSERT INTO `users` VALUES ('16', 'Salma', 'Jlan. Garuda 12');
INSERT INTO `users` VALUES ('17', 'Terryn', 'Jlan. Garuda 13');
INSERT INTO `users` VALUES ('18', 'Hafiz', 'Jlan. Garuda 14');
INSERT INTO `users` VALUES ('19', 'Felicia', 'Jlan. Garuda 15');

kemudian buat koneksi ke database dangan menggunakan php, silahkan salin kode berikut dan simpan file didalam projek yang sudah anda buat tadi dengan dengan nama koneksi.php

<?php
  $host = 'localhost';
  $user = 'root';
  $pass = '';
  $db = 'phpexcel';

  $conn = mysql_connect($host, $user, $pass);
  mysql_select_db($db, $conn);

ganti user, pass, dan db sesuai dengan user, password dan db anda.
setelah itu salin kode dibawah ini dan simpan file didalam projek yang sudah anda buat dengan nama index.php

<?php
  // memanggil koneksi
  require_once __DIR__.'/koneksi.php';
?>
<!DOCTYPE html>
<html>
<head>
<title>EXPORT TABLE KE EXCEL DENGAN PHPEXCEL</title>
</head>
<body>
<a href="proses.php" target="_new">download file excel</a>
<table border="1">
  <thead>
    <tr>
      <th>NAMA</th>
      <th>ALAMAT</th>
    </tr>
  </thead>
  <tbody>
    <?php
      // menampilkan data users
      $sql = 'SELECT * FROM users';
      $rs = mysql_query($sql) or die ($sql);

      while ($row = mysql_fetch_array($rs)) {
        $nama = $row['nama'];
        $alamat = $row['alamat'];
    ?>
    <tr>
      <td><?php echo $nama; ?></td>
      <td><?php echo $alamat; ?></td>
    </tr>
    <?php } ?>
  </tbody>
</table>
</body>
</html>

dan yang terakhir adalah buat file untuk proses export datanya ke excel
silahkan salin kode berikut dan simpan file di dalam projek yang sudah anda buat dengan nama proses.php

<?php
  // memanggil koneksi
  require_once __DIR__.'/koneksi.php';

  // memanggil class PHPExcel
  require_once __DIR__.'/Classes/PHPExcel.php';

  // object excel
  $excel = new PHPExcel();
  $excel->setActiveSheetIndex(0);
  $sheet = $excel->getActiveSheet()->setTitle('data');

  // set title kolom
  $sheet->setCellValue('A1', 'NAMA');
  $sheet->setCellValue('B1', 'ALAMAT');

  // menampilkan data users
  $sql = 'SELECT * FROM users';
  $rs = mysql_query($sql) or die ($sql);

  $i = 2;
  while ($row = mysql_fetch_array($rs)) {
    $nama = $row['nama'];
    $alamat = $row['alamat'];

    // buat baris dam kolom pada excel
    // isi kolom A
    $sheet->setCellValue('A'.$i, $nama);

    // isi kolom B
    $sheet->setCellValue('B'.$i, $alamat);

    $i++;
  }

  header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
  header('Content-Disposition: attachment;filename="users.xlsx"');
  $data = PHPExcel_IOFactory::createWriter($excel, 'Excel2007');
  $data->save('php://output');
  exit;

dan sekarang coba jalankan projek yang sudah anda buat, anda akan mendapatkan tampilan seperti ini

Cara menggunakan php excel header

setelah itu klik download file excel, jika berhasil anda akan mendapatkan file excel dengan isi berdasarkan table

Cara menggunakan php excel header

Ok. sampai di sini dulu tutorial kali ini, selamat mencoba dan semoga bisa bermanfaat.