Cara Import Data dari Excel ke Database dengan CodeIgniter
Pernahkah Anda merasa kesulitan ketika ingin memindahkan data dari Excel ke database? Jika iya, jangan khawatir karena di dalam artikel ini akan dijelaskan cara untuk mengatasi kesulitan tersebut.
CodeIgniter merupakan salah satu framework PHP yang memudahkan kita dalam membangun aplikasi web. Dalam framework ini, terdapat fitur untuk mengimport data dari Excel ke database.
Berikut adalah langkah-langkah cara import data dari Excel ke database dengan menggunakan CodeIgniter:
1. Buatlah tabel di database
Sebelum mengimport data dari Excel, Anda perlu membuat tabel di database terlebih dahulu. Tabel tersebut harus memiliki kolom-kolom yang sesuai dengan data yang akan diimport.
Sebagai contoh, jika Anda ingin mengimport data dari Excel yang berisi nama, nomor telepon, dan alamat, maka tabel yang dibuat harus memiliki kolom-kolom untuk data tersebut. Kolom nama dapat diberi nama ‘nama’, kolom nomor telepon dapat diberi nama ‘no_telp’, dan kolom alamat dapat diberi nama ‘alamat’.
2. Buatlah view untuk mengupload file Excel
Langkah selanjutnya adalah membuat view untuk mengupload file Excel. Anda dapat membuat view tersebut dengan menggunakan file PHP dan HTML.
Berikut adalah contoh kode untuk membuat view tersebut:
“`
Upload file Excel
“`
3. Buatlah controller untuk mengupload file Excel
Setelah membuat view untuk mengupload file Excel, selanjutnya adalah membuat controller untuk mengupload file tersebut. Controller tersebut akan menerima file Excel yang diupload dan kemudian melakukan proses import data ke dalam database.
Berikut adalah contoh kode untuk membuat controller tersebut:
“`
load->view(‘excel_upload’, array(‘error’ => ‘ ‘ ));
public function import()
xlsx’;
$config[‘max_size’] = 2048;
$this->load->library(‘upload’, $config);
if ( ! $this->upload->do_upload(‘file_excel’))
$error = array(‘error’ => $this->upload->display_errors());
$this->load->view(‘excel_upload’, $error);
else
$data = array(‘upload_data’ => $this->upload->data());
$this->load->library(‘excel’);
$file = ‘./uploads/’.$data[‘upload_data’][‘file_name’];
$objPHPExcel = PHPExcel_IOFactory::load($file);
$cell_collection = $objPHPExcel->getActiveSheet()->getCellCollection();
foreach ($cell_collection as $cell)
$column = $objPHPExcel->getActiveSheet()->getCell($cell)->getColumn();
$row = $objPHPExcel->getActiveSheet()->getCell($cell)->getRow();
$data_value = $objPHPExcel->getActiveSheet()->getCell($cell)->getValue();
if ($row == 1)
$header[$column] = $data_value;
else
$arr_data[$row][$column] = $data_value;
$this->load->model(‘excel_model’);
foreach ($arr_data as $row)
$data = array(
‘nama’ => $row[‘A’],
‘no_telp’ => $row[‘B’],
‘alamat’ => $row[‘C’]
);
$this->excel_model->insert_data($data);
“`
4. Buatlah model untuk memasukkan data ke dalam database
Setelah membuat controller untuk mengupload file Excel, selanjutnya adalah membuat model untuk memasukkan data ke dalam database. Model tersebut akan menerima data yang diimport dan kemudian melakukan proses untuk memasukkan data tersebut ke dalam tabel yang sudah dibuat di database.
Berikut adalah contoh kode untuk membuat model tersebut:
“`
db->insert(‘nama_tabel’, $data);
“`
5. Tambahkan file konfigurasi untuk Excel
Terakhir, tambahkan file konfigurasi untuk Excel pada direktori ‘application/config/’. File konfigurasi tersebut akan digunakan untuk membaca file Excel yang diupload.
Berikut adalah contoh kode untuk membuat file konfigurasi tersebut:
“`
‘vendor/phpoffice/phpexcel/Classes/’,
‘format’ => ‘Excel5’
);
“`
Setelah mengikuti langkah-langkah di atas, Anda akan berhasil mengimport data dari Excel ke database dengan menggunakan CodeIgniter.
FAQ:
1. Apa yang harus dilakukan jika muncul error saat mengupload file Excel?
Jawaban: Pastikan Anda mengikuti aturan yang sudah ditentukan dalam kode program. Jika masih muncul error, cek kembali apakah file Excel yang diupload sesuai dengan aturan yang sudah ditentukan.
2. Apa yang harus dilakukan jika data tidak tersimpan dalam database?
Jawaban: Pastikan Anda sudah membuat tabel di dalam database dan kolom-kolom yang diperlukan sesuai dengan data yang akan diimport. Jika kolom-kolom yang ada di dalam tabel tidak sesuai, data tidak akan tersimpan dalam database.