CARA IMPORT DATA EXCEL KE DATABASE PADA LARAVEL

Data import excel ke database mysql dengan php merupakan salah satu fitur yang sering digunakan dalam pengembangan aplikasi web. Banyak aplikasi yang membutuhkan fitur ini, mulai dari aplikasi manajemen data, e-commerce, dan lain sebagainya. Oleh karena itu, dalam artikel ini, akan dibahas tentang cara import data excel ke database mysql dengan menggunakan codeigniter dan php.

Cara Import Data Excel ke Database dengan Codeigniter

Berikut langkah-langkah cara import data excel ke database dengan codeigniter:

1. Download Library PHPExcel

Library PHPExcel merupakan salah satu library yang populer untuk membaca dan menulis file excel dengan bahasa pemrograman php. Library ini dapat didownload di situs resmi phpexcel.net. Setelah mendownload library PHPExcel, file tersebut dapat diekstrak pada folder aplikasi codeigniter yang telah dibuat.

2. Buat Controller Import Excel

Buat file controller dengan nama “Importexcel.php” pada direktori “application/controllers”. Kemudian tambahkan kode berikut:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

Class Importexcel extends CI_Controller 
    public function __construct()
        parent::__construct();
        $this->load->model('Mimportexcel');
        $this->load->library('PHPExcel');
        $this->load->library('upload');
    

    public function index()
        $data['title']="Import Data Excel Codeigniter";
        $this->load->view('vimportexcel',$data);
    

    public function upload()csv",
           "remove_spaces" => TRUE,
           "encrypt_name" => true
        ));
        
        if($this->upload->do_upload('upload_file'))
            $uploaded_data = $this->upload->data();
            $file = './uploads/'.$uploaded_data['file_name'];
            $objPHPExcel = PHPExcel_IOFactory::load($file);
            $worksheet = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true);
            $jsonData = json_encode($worksheet, JSON_PRETTY_PRINT);
            $this->Mimportexcel->save_data($jsonData);
            unlink($file);
            redirect('importexcel');
        else
            echo "Fail upload";
        
    

?>

Pada kode tersebut, fungsi “index” akan menampilkan form untuk upload file excel. Sedangkan fungsi “upload” akan menangani proses upload data excel dan membaca data excel menggunakan library PHPExcel.

Baca Juga :  CARA MEMBUAT ANGKA 01 DI EXCEL

3. Buat Model Import Excel

Buat file model dengan nama “Mimportexcel.php” pada direktori “application/models”. Kemudian tambahkan kode berikut:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Mimportexcel extends CI_Model

    public function save_data($data)
    
        $this->db->trans_start();
        $this->db->query("INSERT INTO tb_importexcel(data) VALUES('".$data."')");
        $this->db->trans_complete();
    

?>

Pada kode tersebut, fungsi “save_data” berfungsi untuk menyimpan data excel yang telah diimport ke dalam tabel pada database.

4. Buat View Import Excel

Buat file view dengan nama “vimportexcel.php” pada direktori “application/views”. Kemudian tambahkan kode berikut:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
?>

<!DOCTYPE html>
<html>
<head>
    <title><?php echo $title ?></title>
</head>
<body>
    <form method="POST" enctype="multipart/form-data" action="<?php echo base_url('index.php/importexcel/upload') ?>">
        <label>Upload file excel:</label><br/>
        <input type="file" name="upload_file" required /><br/><br/>
        <button type="submit" value="Upload" name="submit">Import</button>
    </form>
</body>
</html>

Pada kode tersebut, akan menampilkan form untuk upload file excel dan mengimport data ke dalam database.

Cara Membuat Import Data Excel ke Database Mysql Dengan PHP

Selain menggunakan codeigniter, import data excel ke database mysql juga dapat dilakukan dengan menggunakan php tanpa menggunakan framework. Berikut langkah-langkahnya:

1. Membuat Koneksi Database

Pertama-tama, buatlah file “koneksi.php” dan isilah dengan konfigurasi koneksi database, seperti berikut:

<?php
// Konfigurasi database
$host = "localhost";
$username = "root";
$password = "";
$database = "db_excel";

// Koneksi ke database
$koneksi = mysqli_connect($host, $username, $password, $database);

// Cek koneksi
if(!$koneksi) 
    die("Koneksi gagal: " . mysqli_connect_error());

?>

Pastikan untuk mengganti nilai variabel “$host”, “$username”, “$password”, dan “$database” sesuai dengan konfigurasi database yang digunakan.

2. Buat File Untuk Upload File Excel

Buat file “upload.php” dan isilah dengan kode berikut:

<html>
<head>
<title>Upload File Excel</title>
</head>
<body>
<form enctype="multipart/form-data" method="post" action="import.php">
Pilih file excel untuk diupload: 
<input type="file" name="file"><br>
<input type="submit" name="submit" value="Import">
</form>
</body>
</html>

Pada form di atas, terdapat field untuk memilih file excel yang akan diupload dan tombol untuk mengimport file excel tersebut.

Baca Juga :  Cara Membuat Rumus Filter Data Di Excel

3. Buat Script Untuk Import Data Excel

Selanjutnya, buat file “import.php” dan isilah dengan script berikut:

<?php
// Panggil koneksi database
include 'koneksi.php';

if(isset($_POST['submit'])) 
    // Membaca file excel yang diupload
    $file = $_FILES['file']['tmp_name'];
    $handle = fopen($file, "r");
    $c = 0;
    
    // Looping untuk membaca setiap baris dari file excel
    while(($line = fgetcsv($handle)) !== false) 
        // Membaca data pada baris pertama
        if($c == 0) 
            $c++;
            continue;
        
        
        // Mengubah array dari baris menjadi variabel
        $nama = $line[0];
        $alamat = $line[1];
        $telp = $line[2];
        
        // Menyimpan data ke dalam database
        mysqli_query($koneksi, "INSERT INTO tb_excel(nama, alamat, telp) VALUES ('$nama','$alamat','$telp')");
        
        $c = $c + 1;
    
    
    if(!$handle) 
        die("Error membuka file excel.");
    
    
    // Menutup file excel yang telah dibaca
    fclose($handle);
    
    // Redirect ke halaman index.php setelah proses import selesai dilakukan
    header('location: index.php');

?>

Pada script di atas, file excel yang diupload akan dibaca dengan menggunakan function fgetcsv() dan setiap baris akan diinsert ke dalam database.

FAQ

1. Bagaimana cara menjalankan file tersebut?

Untuk menjalankan file tersebut, pastikan bahwa web server dan database server telah terinstall di komputer anda. Kemudian, buat database dan tabel untuk menampung data dari file excel. Setelah itu, buat file sesuai dengan langkah-langkah yang telah dibahas pada artikel ini. Selanjutnya, file dapat dijalankan dengan membuka halaman web dimana file tersebut telah diupload.

2. Apa yang harus dilakukan jika terjadi error saat proses upload file excel?

Jika terjadi error saat proses upload file excel, pastikan bahwa file yang diupload memiliki format yang benar dan memenuhi persyaratan yang telah ditentukan. Jika masih terjadi error, coba untuk memindahkan file ke direktori lain atau gunakan file excel yang lain. Jika error masih terjadi, periksa konfigurasi server dan pastikan bahwa server telah terinstall library yang dibutuhkan.

Baca Juga :  CARA MENGHAPUS FILE EXCEL YANG TIDAK BISA DIHAPUS

Video Tutorial Cara Import Data Excel ke Database MYSQL Server PHPMyAdmin