Import Excel Ke MySQL Dengan PHP – Selamat datang kembali di seri tutorial php dasar bahasa indonesia terlengkap. kali ini di www.malasngoding.com kita akan belajar tentang PHP lagi, yaitu kita akan belajar tentang cara import data dari excel ke database MySQL dengan menggunakan PHP.
Setelah sebelumnya kita belajar cara export data dari database MySQL ke excel dengan PHP, maka sekarang kebalikannya, kita akan belajar tentang cara membuat import data excel ke MySQL dengan PHP.
Jadi kita akan membuat sebuah form upload, untuk tempat upload file excel yang ingin di import data nya ke database. kemudian pada saat proses upload berjalan, data-data yang ada pada file excel tersebut akan kita simpan ke database MySQL dengan menggunakan PHP.
Yuk langsung saja simak cara membuat import excel ke mysql dengan PHP berikut.
Import Excel Ke MySQL Dengan PHP
Sebagai contoh data yang akan kita import ke mysql dari file excel adalah data pegawai. jadi disini kita akan membuat import data pegawai dari excel ke mysql.
Untuk contoh project pada tutorial ini, saya membuat project baru pada localhost dengan nama “import_excel“. jadi silahkan buat folder dengan nama “import_excel” dalam folder htdocs.
Persiapan Database
Di tutorial ini, data excelnya akan kita import ke database “pegawai”. atau ke table data_pegawai.
Buat database baru dengan nama pegawai, dan buat table dengan nama data_pegawai seperti pada contoh gambar di bawah ini.
Import Excel Ke MySQL Dengan PHP
Atau silahkan teman-teman import sql berikut supaya cepat.
Sampai di sini saya anggap teman-teman telah selesai membuat database “pegawai” dan table “data_pegawai” dengan column id, nama, alamat, telepon.
Koneksi Database
Karena disini kita akan berurusan dengan database, maka wajib hukumnya untuk membuat koneksi database terlebih dulu. agar database MySQL terhubung dengan project PHP kita.
Tutorial membuat koneksi database php dan mysqli bisa teman-teman baca di sini.
Buat file baru dengan nama koneksi.php dalam folder import_excel.
Setelah selesai membuat koneksi.php, selanjutnya tampilkan data dari database. jadi data yang ada di table data_pegawai kita tampilkan juga. kita akan menampilkan data pegawai pada file index.php. jadi buat sebuah file baru dengan nama index.php
index.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<!DOCTYPE html>
<html>
<head>
<title>Import Excel Ke MySQL dengan PHP-www.malasngoding.com</title>
</head>
<body>
<style type="text/css">
body{
font-family:sans-serif;
}
p{
color:green;
}
</style>
<h2>IMPORT EXCEL KE MYSQL DENGAN PHP</h2>
<h3>www.malasngoding.com</h3>
<?php
if(isset($_GET['berhasil'])){
echo"<p>".$_GET['berhasil']." Data berhasil di import.</p>";
}
?>
<ahref="upload.php">IMPORT DATA</a>
<table border="1">
<tr>
<th>No</th>
<th>Nama</th>
<th>ALamat</th>
<th>Telepon</th>
</tr>
<?php
include'koneksi.php';
$no=1;
$data=mysqli_query($koneksi,"select * from data_pegawai");
cara membuat upload file dengan php juga sudah pernah dijelaskan sebelumnya di malasngoding.com. silahkan cek link berikut untuk membaca tutorial membuat upload dengan php.
file yang akan memproses aksi dari form upload ini adalah file upload_aksi.php. jadi sekarang kita buat file php baru dengan nama upload_aksi.php.
inti dari Import Excel Ke MySQL Dengan PHP ini ada pada file upload_aksi.php ini, di sini kita akan menginput data-data yang ada file excel yang di upload ke database.
Oh ya jangan lupa teman-teman harus download dulu library PHP Reader nya. silahkan download library PHP reader nya DI SINI.
Setelah di download, copy file excel_reader2.php ke project kita. lalu kemudian pada file upload_aksi.php, kita harus meng-include library excel_reader2.php. agar kita bisa menggunakan fungsi-fungsi untuk membaca isi file excel yang sudah ada pada library excel_reader2.php.
// menangkap data dan memasukkan ke variabel sesuai dengan kolumnya masing-masing
$nama=$data->val($i,1);
$alamat=$data->val($i,2);
$telepon=$data->val($i,3);
if($nama!=""&& $alamat != "" && $telepon != ""){
// input data ke database (table data_pegawai)
mysqli_query($koneksi,"INSERT into data_pegawai values('','$nama','$alamat','$telepon')");
$berhasil++;
}
}
// hapus kembali file .xls yang di upload tadi
unlink($_FILES['filepegawai']['name']);
// alihkan halaman ke index.php
header("location:index.php?berhasil=$berhasil");
?>
perhatikan pada file upload_aksi.php di atas, kita meng-include file koneksi.php agar bisa terhubung dengan database, kita juga meng-include file excel_reader2.php agar kita bisa menggunakan fungsi PHP yang sudah di buat dalam library excel_reader2.php untuk membaca isi file excel yang di upload.
1
2
3
4
5
6
<?php
// menghubungkan dengan koneksi
include'koneksi.php';
// menghubungkan dengan library excel reader
include"excel_reader2.php";
?>
Selanjutnya data yang di upload kita hitung jumlah data rows nya, agar bisa kita tetapkan pada perulangan. karena data akan kita input ke database menggunakan perulangan sesuai dengan berapa jumlah data yang ada pada file excel, sehingga segitu juga lah jumlah data yang akan di input ke database.
// menangkap data dan memasukkan ke variabel sesuai dengan kolumnya masing-masing
$nama=$data->val($i,1);
$alamat=$data->val($i,2);
$telepon=$data->val($i,3);
if($nama!=""&& $alamat != "" && $telepon != ""){
// input data ke database (table data_pegawai)
mysqli_query($koneksi,"INSERT into data_pegawai values('','$nama','$alamat','$telepon')");
$berhasil++;
}
}
di sini ada 3 column data yang akan kita simpan ke database, yaitu data nama, alamat dan telepon.
1
2
3
4
5
6
7
8
9
$nama=$data->val($i,1);
$alamat=$data->val($i,2);
$telepon=$data->val($i,3);
if($nama!=""&& $alamat != "" && $telepon != ""){
// input data ke database (table data_pegawai)
mysqli_query($koneksi,"INSERT into data_pegawai values('','$nama','$alamat','$telepon')");
$berhasil++;
}
berikut ini adalah gambar contoh format file excel untuk import data excel ke database.
import excel ke database
Kolum 1 isi dengan nama, kolum 2 isi dengan alamat, dan kolum 3 isi dengan nomor telepon. dan format excel harus .xls.
Saya rasa penjelasannya sudah cukup jelas, selanjutnya akan kita coba import datanya.
akses localhost/import_excel pada browser.
import excel mysql
nah, di sini data pegawai kita masih kosong, klik pada tombol “import data”, maka akan di alihkan ke halaman upload file excel.
upload file exce ke database dengan php
Setelah pilih file excel yg ingin di upload (format data harus sesuai dan sama dengan contoh excel di atas tadi). dan klik import.
contoh hasil import excel ke mysql
Oke sekarang data excel telah berhasil di import ke database, dan data pegawai kini telah tampil.
Oke sekian dulu tutorial Import Excel Ke MySQL Dengan PHP. selamat belajar dan JANGAN LUPA LIKE FANPAGE FACEBOOK MALASNGODING.COM sebelum DOWNLOAD SOURCE CODE IMPORT EXCEL KE MySQL DENGAN PHP berikut.
Coding enthusiast.
Someone who love learn something new. especially about web programming and web design. happy to share about knowledge and learn from other.
Membuat Form Login Dengan PHP Tanpa Database – Form login adalah fitur yang sangat berguna dalam sebuah aplikasi atau website. Dengan adanya fitur form login, ...
Menghitung selisih waktu dengan PHP adalah hal yang penting untuk dikuasai. Kenapa begitu? Karena terkadang kita dihadapkan dengan kondisi dimana aplikasi yang sedang kita buat ...
Membuat crud menggunakan ajax php pada operasi hapus data pada database. Artikel ini lanjutan dari artikel sebelumnya mengenai bagaimana cara menginput data menggunakan ajax jquery. ...
Membuat crud menggunakan ajax php dalam operasi input data. Artikel ini dilanjutkan dari materi sebelumnya yang membahas bagaimana cara menampilkan data menggunakan ajax dan php. ...
Permisi mas. Yang saya pas di klik import malah muncul ” parse error: syntax error, unexpected ‘new'(T_NEW) in C:\xampp\htdoc\malasngoding\excel_reader2.php on line 916.
Mohon bantuannya mas
ubah “$this->_ole =& new OLERead();” menjadi “$this->_ole = new OLERead();”
dan “$parts = spilt(“;”,$format);” menjadi “$parts = explode(“;”,$format);”
mas kalau anti injectionnya kepanggil 2 seperti Fatal error: Cannot redeclare anti_injection() (previously declared in C:\xampp\htdocs\duplikatdesa\config\koneksi.php:19) in C:\xampp\htdocs\duplikatdesa\config\koneksi.php on line 22 ini gimana ya?
Download Ebook belajar HTML & CSS dasar untuk pemula gratis.
Ebook ini bisa di download oleh teman-teman yang baru mulai belajar HTML dan CSS dasar tapi tidak tahu mau memulai belajar dari mana.
materi pembelajaran sudah di susun secara sistematis dan di dukung contoh gambar.
Mas untuk promo book 5 = 250.000 itu sampai kapan tanggal akhirnya? Takut nanti kehabisan soalnya. Thanks
gak ada batas mas, wa ke 0896-0676-7404 aja nanti mas,
Mas saya ganti tabel database nya pesan nya berhasil impor sejumlah 247 tapi kosong mas di halaman indeksnya
mas ini bisa untuk excel 97-2003 atau untuk semua versi excel?
Trima kasih Mas Diki Alfarabi, artikelnya sangat membantu. semoga sukses slalu mas Diki
Permisi mas. Yang saya pas di klik import malah muncul ” parse error: syntax error, unexpected ‘new'(T_NEW) in C:\xampp\htdoc\malasngoding\excel_reader2.php on line 916.
Mohon bantuannya mas
ubah “$this->_ole =& new OLERead();” menjadi “$this->_ole = new OLERead();”
dan “$parts = spilt(“;”,$format);” menjadi “$parts = explode(“;”,$format);”
gmn cara kalau bikin xlsx
Mas terdapat berita ini. Maksudnya apa?
Parse error: syntax error, unexpected ‘new’ (T_NEW) in C:\xampp\htdocs\LATIHAN_6\excel\excel_reader2.php on line 916
halo. mau nanya mas. kalau nilai desimal kenapa gk bisa masuk ya? dianggap 0 nilai nya
format cell nya harus diubah dlu mas, di excelnya kalau mau buat desimal
File yang di upload kok tiba – tiba hilang dari foldernya, mohon solusinya mas
mas kenapa saat saya upload excel.xlsx tidak terbaca ya.
mas klaw menampilkan beberapa data dari 5 tabel terus di import ke excel bisa?
bisa, tinggal set aja dari controllernya untuk tampilin 5 data aja mas
@Muhamad adiyansyah , saya bantu jawab ya. Untuk error itu, di line 916 ole =& , ‘&’ nya di hapus.
buka file excel_reader.php cari character ‘&’ pada line 916 kemudian ganti / temukan fungsi ‘split’ dan ganti dengan ‘explode’
*happy code*
temukan dan hapus karakter “&” pada line 916 dan temukan dan replace fungsi split dengan fungsi explode
mas kalau anti injectionnya kepanggil 2 seperti Fatal error: Cannot redeclare anti_injection() (previously declared in C:\xampp\htdocs\duplikatdesa\config\koneksi.php:19) in C:\xampp\htdocs\duplikatdesa\config\koneksi.php on line 22 ini gimana ya?
Coba hapus character “&” pada line 916 mas
gan mau tanya, saya berhasil import data ke database, tapi kenapa ngga muncul di tabel nya ya? masih kaya kondisi semula
gan mau tanya, ane berhasil upload file excelnya, tapi kok ga masuk kedalem tabelnya ya? masih kosong kaya kondisi awal
cek lagi di perulangan atau di querynya mas, mungkin mas typo
Bang mau tanya maksutnya for($i = 2) itu apa ?
Terima kasih
variabel i = 2, untuk buat perulangan mas
saya udah pakai source codenya kok excell yang diinput tidak terbaca alias tidak masuk database?
Mas agar data hasil importnya nge replace data yg lama gmn ya.
excel readernya kok gabisa d download
bang kok 0 data berhasil diimport terus ya .. padahal udah download punya abang programnya
saya error undefined array di baris 390, ada yang tau solusinya?
trimaksih banyak bermanfaat
bang itu library phpnya gakbisa tuh didownload bang
Apakah ada tutorial update data dengan cara upload file excel ?
mas.. saya udah coba download source codenya, dan saya jalan kan hasil nya : 0 Data berhasil di import. table nya masih kosong, salahnya dimana ya ?
gak fungsi mas saya udah download, saya udah ubah koneksi tetep gak bisa,,,, kenapa ya mas…
saya juga udah unduh file mas ttp masih gak bisa
bagus
link nya mati mas untuk download nya