Apakah Anda sering menghadapi masalah ketika harus memasukkan data dari Excel ke dalam database MySQL? Jangan khawatir karena Anda telah menemukan solusi yang tepat. Dalam artikel ini, kami akan membahas salah satu cara untuk mengimpor data Excel ke dalam database MySQL menggunakan PHP. Metode ini dapat digunakan oleh orang dengan berbagai tingkat pengalaman di bidang pemrograman.
Langkah-Langkah Mengimpor Data Excel ke Database MySQL Menggunakan PHP
- Membuat File PHP
- Membuat Koneksi Database
- Membuat Form
- Membaca Data Excel
- Memasukkan Data ke dalam Database MySQL
- Menampilkan Hasil
Langkah pertama adalah membuat file PHP yang akan digunakan untuk mengambil data dari file Excel dan memasukkannya ke dalam database MySQL.
Pertama-tama, pastikan Anda telah menginstal library PHPExcel pada sistem Anda. Jika belum, dapatkan di situs resmi PHPExcel. Setelah itu, buka editor teks atau aplikasi pengembangan web favorit Anda dan buat file PHP baru. Beri nama file tersebut dengan nama yang mudah diingat, misalnya import_excel.php.
Pertama-tama, kita perlu memuat library PHPExcel dan mengatur mode error PHP. Ini harus dilakukan pada awal file PHP kita:
<?php ini_set('display_errors', 1); require_once 'PHPExcel/PHPExcel.php';
Selanjutnya, kita perlu membuat koneksi ke dalam database MySQL. Untuk melakukannya, kita perlu menyediakan parameter yang diperlukan seperti nama host, username, password, dan nama database. Letakkan kode berikut di bawah kode sebelumnya:
$host = 'localhost'; $username = 'root'; $password = 'password'; $dbname = 'nama_database'; $db = new mysqli($host, $username, $password, $dbname); if ($db->connect_error) die("Connection failed: " . $db->connect_error);
Kita perlu membuat form HTML yang akan digunakan untuk memilih file Excel yang akan diimpor ke dalam database MySQL. Berikut adalah kode HTML untuk form:
<form method="post" enctype="multipart/form-data"> <input type="file" name="file"> <input type="submit" name="submit" value="Import"> </form>
Setelah form di atas di-submit, kita perlu membaca data dari file Excel yang diunggah oleh pengguna. Kode di bawah ini akan membaca file Excel dan menandai lembar aktivnya:
if(isset($_POST["submit"])) { $inputFileType = PHPExcel_IOFactory::identify($_FILES['file']['tmp_name']); $objReader = PHPExcel_IOFactory::createReader($inputFileType); $objReader->setReadDataOnly(true); $objPHPExcel = $objReader->load($_FILES['file']['tmp_name']); $objWorksheet = $objPHPExcel->getActiveSheet(); $highestRow = $objWorksheet->getHighestRow(); $highestColumn = $objWorksheet->getHighestColumn(); $highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);
Sekarang tiba saatnya untuk memasukkan data dari file Excel ke dalam database MySQL. Kode di bawah ini akan menelusuri setiap baris dan setiap sel di dalam file Excel, dan memasukkannya ke dalam tabel MySQL:
for ($row = 2; $row <= $highestRow; ++$row) $data = array(); for ($col = 0; $col < $highestColumnIndex; ++$col) $cell = $objWorksheet->getCellByColumnAndRow($col, $row); $val = $cell->getValue(); $dataType = PHPExcel_Cell_DataType::dataTypeForValue($val); if ($dataType == 'G') $val = PHPExcel_Shared_Date::ExcelToPHP($val); $val = date('Y-m-d', $val); $data[] = "'" . $db->real_escape_string($val) . "'"; $query = "INSERT INTO nama_tabel (nama_kolom1, nama_kolom2, nama_kolom3) VALUES("; $query .= implode(',', $data); $query .= ")"; $db->query($query);
Terakhir, kita perlu menampilkan pesan yang memberi tahu pengguna bahwa data telah berhasil diimpor ke dalam database MySQL. Kode di bawah ini akan menampilkan pesan tersebut:
echo "<p>Data berhasil diimpor ke dalam database MySQL.</p>";
Gambar Hasil Import Data Excel ke dalam Database MySQL
Anda dapat melihat bahwa data telah berhasil dimasukkan ke dalam tabel di database MySQL.
FAQ
1. Apakah saya memerlukan pengetahuan pemrograman untuk menggunakan metode ini?
Ya, Anda memerlukan pengetahuan dasar tentang PHP dan MySQL. Namun, tutorial sederhana ini dapat diikuti bahkan oleh pemula.
2. Adakah cara lain untuk mengimpor data Excel ke dalam database MySQL?
Ya, ada beberapa cara untuk melakukan hal ini. Salah satunya adalah menggunakan alat pengimpor data pihak ketiga seperti Navicat atau HeidiSQL.