Membuat Export dan Import File Exel dengan Codeigniter pada PHPExel

PHPExcel CODEIGNITER

kangpepe.com | Kemampuan untuk membaca dan membuat file exel pada sebuah aplikasi bebrbasis web sangat dibutuhkan, ini biasanya keperluan kantor maupun sistem informasi kampus agar menghasilkan laporan yang membutuhkan file exel pada kebutuhan karyawan. Kita contohkan pada bagian keuangan sangat membutuhkan data keuangan sistem yang dapat di export pada excel agar dapat di kembangkan lagi sebagai laporan dan juga bagian pangkalan data pada kampus untuk melihat data mahasiswa yang akan wisuda misalnya agar dapat dilaporkan pada kopertis.

Baiklah kita sekarang akan membuat export dan import data ke exel menggunakan Codeigniter pada sistem informasi. Perhatikan langkah-langkah dibawah ini untuk memulai pembuatan PHPExcel :

INSTALL PHPEXECEL

  1. Download library PHPExcel dari alamat: http://phpexcel.codeplex.com/
  2. Buat folder baru bernama PHPExcel di folder application/appexcel
  3. Extract file PHPExcel yang sudah di download dan copy ke dalam folder application/appexcel /PHPExcel
CREAT LIBRARY CODEIGNITER

Buat sebuah file dengan nama Excel.php pada sebuah Library App Codeigniter yang kita miliki pada directori application/library dan masukan coding dibawah ini sebagai pemanggil dari data PHPExcel.php pada direktori  application/appexcel


 if (!defined('BASEPATH')) exit('No direct script access allowed');  
 
require_once APPPATH."/third_party/PHPExcel/PHPExcel.php";
ini_set('memory_limit','1024M');
 
Class Excel extends PHPExcel {
    public function __construct() {
        parent::__construct();
    }
}



FUNCITION MEMBACA FILE EXCEL

Selanjutnya anda buat sebuah file diadalam direktori application/view dan simpan dengan nama wisudamhsw.xls dimana nanti diminta beberapa data mahasiswa yang akan wisdua ini contoh studikasus kita buat.

Buat sebuah file pada controller dengan nama file Mhswexcel.php Sekarang kita buat sebuah method pada file yang kita buat tadi didalam application/controller. Nantinya file ini akan menjadi mainfile pada method kita selanjutnya, copy coding methot dibawah ini sebagai methot pertama kita :


public function bacaexcel()
{
    $file = APPPATH.'wisudamhsw.xls';
    $this->load->library('excel');
 
    $objPHPExcel = PHPExcel_IOFactory::load($file);
 
    // Ambil koleksi cell saja
    $cell_collection = $objPHPExcel->getActiveSheet()->getCellCollection();
 
    // Copy ke array semua cell nya
    $data = array();
    foreach ($cell_collection as $cell) {
 
        $kolom = $objPHPExcel->getActiveSheet()->getCell($cell)->getColumn();
        $baris = $objPHPExcel->getActiveSheet()->getCell($cell)->getRow();
        $isi   = $objPHPExcel->getActiveSheet()->getCell($cell)->getValue();
 
        if ($baris == 1) {
            $header[$kolom] = $isi;
        } else if ($baris >= 1) {
            $data[$baris][$kolom] = $isi;
        }
 
    }
 
    // Untuk keperluan demo, saya tidak pakai view
    print "<table border='1' cellpadding='5'>";
    print "<tr>";
    foreach ($header as $h) {
        print "<td><b>$h</b></td>";
    }
    print "</tr>";
    foreach($data as $bar) {
        print "<tr>";
        foreach ($bar as $kol) {
            print "<td>$kol</td>";
        }
        print "</tr>";
    }
    print "</table>"; 
}


FUNCITION MEMBUAT FILE EXCEL

Membuat file excel yang dapat anda download dengan nama file wisudawan23.xls, nantinya file ini yang akan anda dapatkan pada function buatexcel() dan namun belum diincludakan pada $this->load->model pada function ini untuk mendapatkan mendownload langsung file extensi xls atau Excel pada sistem anda


public function buatexcel()
{
    $this->load->library('excel');
    $this->excel->setActiveSheetIndex(0);
    $this->excel->getActiveSheet()->setTitle('Worksheet1');
    $this->excel->getActiveSheet()->setCellValue('A1', 'Halo CodeIgniter Indonesia');
    $this->excel->getActiveSheet()->getStyle('A1')->getFont()->setSize(20);
    $this->excel->getActiveSheet()->getStyle('A1')->getFont()->setName("Calibri");
    $this->excel->getActiveSheet()->getStyle('A1')->getFont()->setBold(true);
 
    $filename='wisudawan23.xls'; 
 
    // Header file Excel
    header('Content-Type: application/vnd.ms-excel'); 
    header('Content-Disposition: attachment;filename="'.$filename.'"');
    header('Cache-Control: max-age=0'); 
 
    $objWriter = PHPExcel_IOFactory::createWriter($this->excel, 'Excel5');
 
    // Agar output didownload
    $objWriter->save('php://output');
}


Kesimpulan : anda dapat mendownload langsung jika anda memanggil dati function buatexcel() ini, sehingga data berupa excel MS, anda juga dapat memodifikasi dari kolom dan baris pada function ini terlebih dahulu sebelum memanggil data pada tabel database.

FUNCITION MEMBUAT FILE EXCEL DARI DATABASE

Kali ini anda akan saya bawa ke databse diman pada funcion buatexcel() merupakan pengontrol awal untuk desig padafile excel anda sekarang anda tambahkan satu function lagi pada controller Mhswexcel.php yang kita buat tadi dengan metho function exceldatabase() dimana excel file yang akan anda download akan berisi data yang di ambil pada database seperti coding dibawah ini :

public function exceldatabase() {
 
    $this->load->library('excel');
    $this->excel->setActiveSheetIndex(0);
    $this->excel->getActiveSheet()->setTitle('PENDAFTARAN WISUDAWAN ANGKATAN 23');
 
    // Load model
    $this->load->model('tbl_mhsw');
 
    // Baca dari tabel sebagai array
    $mhsw = $this->tbl_mhsw->get_array();
 
    // Perintahkan PHPExcel untuk membuat 
    $this->excel->getActiveSheet()->fromArray($mhsw);
 
    $filename='listwisudawan23.xls'; 
 
    header('Content-Type: application/vnd.ms-excel'); 
    header('Content-Disposition: attachment;filename="'.$filename.'"'); 
    header('Cache-Control: max-age=0'); 
    $objWriter = PHPExcel_IOFactory::createWriter($this->excel, 'Excel5'); 
 
    $objWriter->save('php://output');
}


Kesimpulan : Kali ini saya mengambil studikasus pada pengambilan data wisudawan berdasarkan status mahasiswa pada tabel tbl_mhsw yang ada pada database. Table ini saya ambil pada data terintegrasi kampus STKIP PGRI Sumbar yang ingin wisuda dengan filed status yang sudah lulus kompre, ganti $this->load->model('tbl_mhsw') sesuai dengan tabel database anda. Disini anda dapat mencocokan dengan sistem yang anda miliki.

FINISH

Demikian sekilas tentang tutorial membuat file excel berdasarkan kebutuhan data pada codeigniter, semoga artikel ini dapat bermanfaat, anda dapat berkreasi pada tutorial ini. Salam Kelascoding : Creative and beneficial to the people.


Recommend Article × +

OWNER AND CO OF PT. TRANS TECHNO Freelance Web Design and Yii2 Development in ICT STKIP PGRI WEST SUMATRA. While Studying MAGISTER UPI-YPTK Padang,CEO CMS Codepedia, Lives in Padang - Indonesia | WhatsApp : 0853-7516-4491

Related Posts

Update Sesudahnya
« Prev Post
Update Sebelumnya
Next Post »