Import Data dari Excel ke Database MySQL dengan PHP

source code dapat di copy dengan mengarahkan cursor ke area source code kemudian mengklik tombol dengan icon kertas putih dan <>
Setelah sebelumnya saya membahas bagaimana melakukan Export data dari tabel database, kurang pas rasanya jika belum membahas bagaimana membuat proses Import data dari file excel ke tabel database karena dalam membangun aplikasi kita tidak akan pernah lepas dari data dan database.

Cara ini dapat kita terapkan pada data yang berjumlah ribuan atau mungkin lebih sebab siapa yang sanggup menginputkan data sebanyak itu. meskipun ada mungkin hal itu akan memakan waktu yang cukup lama. Itulah sebabnya dibangun aplikasi untuk memudahkan pekerjaan kita.

1. Pertama, dalam ujicoba ini saya memiliki sebuah tabel (masih kosong) dalam database saya dengan struktur sebagai berikut

Import Data dari Excel ke Database MySQL dengan PHP

2. Kedua, Lakukan koneksi ke database. Berikut contoh script yang saya gunakan.
<?php 
mysql_connect("localhost","root","root");
mysql_select_db("biodata");
?>
3. Ketiga, Download Class PHP Excel Reader yang sudah saya persiapkan untuk anda disini. Extrack lalu letakan foldernya didalam direktori folder projek anda.

4. Keempat, Buatlah sebuah file excel dengan exstensi .xls dengan jumlah shell sesuai dengan field database. berikut adalah contoh yang saya gunakan

Import Data dari Excel ke Database MySQL dengan PHP

5. Berikutnya adalah membuat sebuah file PHP yang berisi script form html (1 Input dengan type file dan 1 Input dengan type submit) dengan contoh sebagai berikut.
<html>
<head>
 <title>Import Excel</title>
</head>
 
 <body>
 <form method="post" action="import.php" enctype="multipart/form-data">
 Pilih File <input type="file" name="datague"/>
 <br/><input type="submit" name="import" value="Import"/>
 </form>
 </body>
</html>
6. Langkah Terakhir adalah membuat script yang akan menjadi aksi dari form jika button submit ditekan pada file (step 5). Simpan dengan nama import.php. Ini Codingnya sebagai berikut
<?php
include "koneksi.php";
require_once 'Excel/reader.php';
$data = new Spreadsheet_Excel_Reader();
$data->setOutputEncoding('CP1251');

// Ambil Value Dari Inputan Form
$fileexcel = $_FILES['datague']['name'];
$data->read($fileexcel);
 
for ($x=2; $x <= count($data->sheets[0]["cells"]); $x++) {
    // Mendefinisikan Shell dalam File Excel Sejumlah Field yang ada di tabel
    $nama = $data->sheets[0]["cells"][$x][1];
 $jeniskelamin = $data->sheets[0]["cells"][$x][2];
    $agama = $data->sheets[0]["cells"][$x][3];
 $alamat = $data->sheets[0]["cells"][$x][4];
 // Simpan Ke Tabel
    $simpan = mysql_query("INSERT INTO data (nama,jenis_kelamin,agama,alamat) VALUES ('$nama','$jeniskelamin','$agama','$alamat')");
 if (!$simpan){
 echo "Data Ke ".$x." GAGAL disimpan!";
 }
}
echo "<script>alert('Data Berhasil di Import!'); history.go(-1);</script>";
?>

Hasil yang saya peroleh adalah sebagai berikut. Sekedar info, Error Seperti The filename is not readable kemungkinan banyak terjadi disebabkan jenis file excel yang berbeda-beda. Jadi usahakan anda membuat file excel sendiri.

Import Data dari Excel ke Database MySQL dengan PHP
source code dapat di copy dengan mengarahkan cursor ke area source code kemudian mengklik tombol dengan icon kertas putih dan <>

Share this

Related Posts

Previous
Next Post »

15 comments

comments
14 January 2015 at 10:33 delete

Mas, saya ikuti cara ini tapi hasilnya the file name is not readable, itu kenapa yah ?

Reply
avatar
16 February 2015 at 13:10 delete

Excelnya save as ke worksheet 2003 (*.xls)

Reply
avatar
Anonymous
23 April 2015 at 11:36 delete

i have read all of your article, so interesting article.
Agen casino ,
Agen judi bola ,
Agen sbobet terpercaya ,
Agen bola online

Reply
avatar
Anonymous
26 April 2015 at 19:12 delete

masih belum ada solusinya ya untuk not readable?

Reply
avatar
23 June 2015 at 12:38 delete

not readable?
gimana ini yang posting -_-

Reply
avatar
Anonymous
17 March 2016 at 16:07 delete

mepang bale

Reply
avatar
18 May 2016 at 23:50 delete

gan, kalo tablenya hasil joinan gmana?

Reply
avatar
18 May 2016 at 23:50 delete

gan, kalo tablenya hasil joinan gmana?

Reply
avatar
4 August 2016 at 17:57 delete

Kalau fieldnya gak urut gapapa??

Reply
avatar
4 August 2016 at 18:00 delete

Kalau fieldnya gak urut gapapa??

Reply
avatar
20 September 2016 at 14:59 delete

gan link buat download class php readenya ngak bisa di download? gimana tu?

Reply
avatar

bantu kami untuk lebih baik; jika ada hal yang kurang jelas atau broken link silahkan masukan komentar anda kami akan segera menanggapi dan memperbaikinya. login ke akun gmail anda untuk menampilkan form komentar.