CARA IMPORT DATA EXCEL KE MYSQL DENGAN CODEIGNITER

Cara Import Data Excel ke MySQL dengan PHP

Jika Anda bekerja dengan banyak data, seperti data karyawan atau data pelanggan, mungkin Anda ingin menyimpan data tersebut dalam database untuk mempermudah pengelolaan. Salah satu cara untuk melakukannya adalah dengan mengimpor data dari file Excel ke database MySQL.

Dalam artikel ini, saya akan memberikan panduan praktis tentang cara mengimpor data Excel ke database MySQL dengan menggunakan PHP. Kami akan membahas tiga metode yang berbeda: menggunakan SQL, menggunakan PHPExcel, dan menggunakan PHPOffice.

Metode 1: Menggunakan SQL

Metode pertama yang akan kita bahas adalah menggunakan perintah SQL untuk mengimpor data Excel. Ini adalah cara yang paling sederhana karena hanya membutuhkan satu baris kode SQL.

Langkah 1: Buat tabel baru dalam database Anda

Langkah pertama adalah membuat tabel baru dalam database Anda. Anda harus membuat tabel dengan kolom yang sama dengan kolom dalam file Excel Anda.

Berikut adalah contoh kode untuk membuat tabel:

“`
CREATE TABLE customers (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(30) NOT NULL,
email VARCHAR(50) NOT NULL,
phone VARCHAR(15) NOT NULL
);
“`

Tabel ini memiliki tiga kolom: nama, email, dan nomor telepon. ID adalah kolom yang diatur otomatis oleh MySQL.

Langkah 2: Membuka file Excel dan membaca data

Setelah membuat tabel, langkah selanjutnya adalah membuka file Excel dan membaca data dari file tersebut. Dalam contoh ini, saya akan menggunakan PHPExcel untuk membuka file Excel dan membaca data.

“`
require_once ‘PHPExcel/Classes/PHPExcel.php’;

$objPHPExcel = PHPExcel_IOFactory::load(“customers.xlsx”);
$worksheet = $objPHPExcel->getActiveSheet();

foreach ($worksheet->getRowIterator() as $row)
$name = $worksheet->getCellByColumnAndRow(0, $row->getRowIndex())->getValue();
$email = $worksheet->getCellByColumnAndRow(1, $row->getRowIndex())->getValue();
$phone = $worksheet->getCellByColumnAndRow(2, $row->getRowIndex())->getValue();

“`

Ini adalah kode untuk membuka file Excel dan membaca data dari setiap baris. Dalam contoh ini, kolom pertama adalah nama, kolom kedua adalah email, dan kolom ketiga adalah nomor telepon.

Baca Juga :  Cara Mencari Data Yang Belum Lunas Di Excel

Langkah 3: Menambahkan data ke database menggunakan SQL

Setelah membaca data dari file Excel, langkah terakhir adalah menambahkan data ke database menggunakan perintah SQL. Dalam contoh ini, saya akan menggunakan setiap baris data untuk menambahkan catatan baru ke tabel pelanggan.

“`
$sql = “INSERT INTO customers (name, email, phone) VALUES (‘$name’, ‘$email’, ‘$phone’)”;
mysqli_query($conn, $sql);
“`

Kode ini menambahkan setiap baris data ke database menggunakan perintah SQL.

Metode 2: Menggunakan PHPExcel

Metode kedua yang akan kita bahas adalah menggunakan PHPExcel untuk membaca file Excel dan menambahkan data ke database MySQL. Ini lebih rumit daripada metode pertama, tetapi memungkinkan Anda untuk melakukan lebih banyak hal dengan data Anda.

Langkah 1: Instal PHPExcel

Pertama, Anda harus menginstal PHPExcel. Anda dapat mengunduh kode dari situs web PHPExcel, atau Anda dapat menginstalnya melalui Composer dengan menambahkan dependensi berikut ke file composer.json Anda:

“`

“require”:
“phpoffice/phpexcel”: “1.8.*”

“`

Langkah 2: Buka file Excel dan baca data

Kode berikut membuka file Excel dan membaca data dari setiap baris:

“`
require_once ‘vendor/autoload.php’;

use PhpOffice\PhpSpreadsheet\IOFactory;

$inputFileName = ‘customers.xlsx’;

$spreadsheet = IOFactory::load($inputFileName);

$worksheet = $spreadsheet->getActiveSheet();

foreach ($worksheet->getRowIterator() as $row)
$name = $worksheet->getCellByColumnAndRow(0, $row->getRowIndex())->getValue();
$email = $worksheet->getCellByColumnAndRow(1, $row->getRowIndex())->getValue();
$phone = $worksheet->getCellByColumnAndRow(2, $row->getRowIndex())->getValue();

“`

Dalam contoh ini, kolom pertama adalah nama, kolom kedua adalah email, dan kolom ketiga adalah nomor telepon.

Langkah 3: Menambahkan data ke database

Setelah membaca data dari file Excel, langkah berikutnya adalah menambahkan data ke database. Kode berikut menambahkan setiap baris data ke tabel pelanggan menggunakan objek PDO:

“`
try
$dbh = new PDO(‘mysql:host=localhost;dbname=mydatabase’, ‘username’, ‘password’);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$stmt = $dbh->prepare(“INSERT INTO customers (name, email, phone) VALUES (:name, :email, :phone)”);

Baca Juga :  CARA MEMINDAHKAN FILE CSV KE EXCEL

$stmt->bindParam(‘:name’, $name);
$stmt->bindParam(‘:email’, $email);
$stmt->bindParam(‘:phone’, $phone);

$stmt->execute();
catch (PDOException $e)
echo ‘Connection failed: ‘ . $e->getMessage();

“`

Metode 3: Menggunakan PHPOffice

Metode ketiga yang akan kita bahas adalah menggunakan PHPOffice untuk membaca file Excel dan menambahkan data ke database MySQL. PHPOffice adalah library yang berisi kelas PHP untuk membaca, menulis, dan mengubah file Microsoft Office.

Langkah 1: Instal PHPOffice

Pertama, Anda harus menginstal PHPOffice. Anda dapat mengunduh kode dari situs web PHPOffice, atau Anda dapat menginstalnya melalui Composer dengan menambahkan dependensi berikut ke file composer.json Anda:

“`

“require”:
“phpoffice/phpspreadsheet”: “^1.18”

“`

Langkah 2: Baca file Excel

Kode berikut membaca data dari file Excel:

“`
require_once ‘vendor/autoload.php’;

use PhpOffice\PhpSpreadsheet\IOFactory;
use PhpOffice\PhpSpreadsheet\Spreadsheet;

$inputFileName = ‘customers.xlsx’;

$spreadsheet = IOFactory::load($inputFileName);

$worksheet = $spreadsheet->getActiveSheet();

foreach ($worksheet->getRowIterator() as $row)
$name = $worksheet->getCellByColumnAndRow(0, $row->getRowIndex())->getValue();
$email = $worksheet->getCellByColumnAndRow(1, $row->getRowIndex())->getValue();
$phone = $worksheet->getCellByColumnAndRow(2, $row->getRowIndex())->getValue();

“`

Langkah 3: Menambahkan data ke database

Setelah membaca data dari file Excel, langkah berikutnya adalah menambahkan data ke database. Kode berikut menambahkan setiap baris data ke tabel pelanggan menggunakan objek PDO:

“`
try
$dbh = new PDO(‘mysql:host=localhost;dbname=mydatabase’, ‘username’, ‘password’);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$stmt = $dbh->prepare(“INSERT INTO customers (name, email, phone) VALUES (:name, :email, :phone)”);

$stmt->bindParam(‘:name’, $name);
$stmt->bindParam(‘:email’, $email);
$stmt->bindParam(‘:phone’, $phone);

$stmt->execute();
catch (PDOException $e)
echo ‘Connection failed: ‘ . $e->getMessage();

“`

FAQ

1. Apakah saya perlu menginstal PHPExcel atau PHPOffice untuk mengimpor data Excel ke database MySQL?

Ya, Anda perlu menginstal salah satu dari mereka untuk membaca file Excel. Namun, MySQL menyediakan fasilitas untuk mengimpor data dari TSV atau CSV, sehingga Anda tidak perlu menggunakan library PHP.

2. Bagaimana saya bisa mengimpor file Excel yang lebih besar?

Baca Juga :  Cara Membuat Form Di Excel

Jika file Excel Anda sangat besar, Anda mungkin tidak dapat membaca seluruh file ke dalam memori sekaligus. Dalam hal ini, Anda harus membaca data dalam batch menggunakan metode seperti LIMIT dan OFFSET. Anda dapat menggunakan library seperti PHPLimitIterator untuk membantu dengan mengimpor data secara bertahap.

Video tutorial:

Berikut adalah video tutorial yang dapat membantu Anda memahami cara mengimpor data Excel ke database MySQL dengan PHP: (https://www.youtube.com/watch?v=WIR6G5VcVHc)

Kesimpulan

Mengimpor data Excel ke database MySQL dapat sangat berguna untuk membantu mengelola data Anda, terutama jika Anda bekerja dengan banyak data. Dalam artikel ini, kami telah membahas tiga cara yang berbeda untuk mengimpor data Excel ke database MySQL menggunakan PHP.

Metode pertama menggunakan SQL untuk mengimpor data, yang merupakan cara yang paling sederhana dan mudah dilakukan. Metode kedua menggunakan PHPExcel untuk membaca file Excel dan menambahkan data ke database MySQL, sementara metode ketiga menggunakan PHPOffice untuk membaca file Excel dan menambahkan data ke database MySQL.

Jadi, jika Anda mencari cara untuk mengimpor data Excel ke database MySQL dengan PHP, cobalah salah satu metode ini dan lihatlah mana yang cocok untuk Anda!