• Login
  • Join
  • Home
  • Profil
  • Cara Pembelian
  • Kontak

logo

  • Home
  • Kategori Tutorial
    • Ajax - JQuery
    • API Developer
    • CakePHP
    • CodeIgniter
    • HTML & CSS
    • Lain-lain
    • MySQL - MySQLi
    • OOP PHP
    • PHP Classic
    • Smarty PHP
    • SMS Gateway
    • Version Control
  • Download
  • My Books
  • Prosedur Penulisan Naskah
  • Toko Online
  • My Sites
    • Asfamedia.com
    • Asfasolution.com
    • Komiqu.com
Home
  • Home
  • Login
  • Join
  • Kategori Tutorial
    • Ajax - JQuery
    • API Developer
    • CakePHP
    • CodeIgniter
    • HTML & CSS
    • Lain-lain
    • MySQL - MySQLi
    • OOP PHP
    • PHP Classic
    • Smarty PHP
    • SMS Gateway
    • Version Control
  • Download
  • Info Buku
  • Prosedur Penulisan Naskah
  • Toko Online
  • My Sites
    • Asfamedia.com
    • Asfasolution.com
    • Oaseast.com
  • Pembelian online saat ini dialihkan ke www.asfamedia.com
  • Dapatkan diskon hingga 40% dengan bergabung sebagai member di asfamedia.com (Khusus buku-buku penerbit CV. ASFA Solution)
  • Segera daftarkan email Anda di newsletter melalui right column untuk mendapatkan informasi terbaru agussaputra.com
  • Artikel dan informasi yang ditampilkan bisa Anda copy, dengan catatan: menuliskan sumber : agussaputra.com
  • Home
  • Artikel
  • Import Excel to Database Menggunakan PHP dengan Filtering Data Besyarat

Import Excel to Database Menggunakan PHP dengan Filtering Data Besyarat

06 Januari 2012
41   
37.587

Import Excel to Database Menggunakan PHP dengan Filtering Data Besyarat

Tulisan ini mengawali tutorial di awal tahun 2012.. sebelumnya penulis ingin mengucapkan "Selamat Tahun Baru 2012" kepada pembaca dan pengunjung setia web ini..

Tema yang akan penulis tulis kali ini adalah mengenai Upload File (Import) data Excel ke dalam Database.. namun dengan sentuhan / catatan:
1. Jika terdapat duplikasi data dalam file excel (NIM), maka akan difilter, dan akan dimasukkan dalam tabel gagal dengan keterangan "Duplikasi NIM"
2. Jika terdapat NIM yang kosong, maka akan difilter juga dan dimasukkan ke dalam tabel gagal dengan keterangan "NIM Kosong"
3. Jika ke-2 syarat diatas lolos, maka akan disimpan ke dalam tabel sukses (mahasiswa)..

jadi intinya, memudahkan si pengguna untuk mengetahui "Mana data yang berhasil diupload dan Mana data yang gagal diupload", karena ke-2 hal tersebut telah dipisahkan
secara otomatis..

simpel kan.. namun cukup membuat pusing khususnya untuk para pemula..
kita langsung saja...

Siapkan database dan 2 tabel dengan spesifikasi seperti berikut:

tmahasiswa
nim | varchar(10)
nama | varchar(100)
alamat | varchar(100)
jurusan | varchar(50)
hp | varchar(20)
tgagal
nim | varchar(10)
nama | varchar(100)
keterangan | varchar(100)


copy mode atau download file excel Reader terlebih dahulu disini. file tersebut digunakan untuk mampu membaca data file excel

Buat file php dengan nama:

form_import.php

<h1>mport Data Excel</h1>
<form action="proses_import.php" enctype="multipart/form-data" method=“POST”>
Pilih File Excel: <input name="userfile" type="file" />
<input name="upload" type="submit" value="Import" /></form>


dan

proses_import.php

<?php
// menggunakan class phpExcelReader
include "excel_reader2.php";

// koneksi ke MySQL
mysql_connect("localhost","root","");
mysql_select_db("dbagussaputra");

// membaca file excel yang diupload
$data = new Spreadsheet_Excel_Reader($_FILES['userfile']['tmp_name']);


// membaca jumlah baris dari data excel
$baris = $data->rowcount($sheet_index=0);


// import data excel mulai baris ke-2
// (karena baris pertama adalah nama kolom)
for ($i=2; $i <= $baris; $i++){
 $nim = $data->val($i, 1);
 $nama = $data->val($i, 2);
 $alamat = $data->val($i, 3);
 $jurusan = $data->val($i, 4);
 $hp = $data->val($i, 5);


$cari = mysql_num_rows(mysql_query("SELECT nim FROM tmahasiswa WHERE nim = '$nim'"));

if (empty($nim)){
  $hasil = mysql_query("INSERT INTO tgagal(nim,nama,keterangan) VALUES('$nim','$nama','NIM Kosong')");
 }
 elseif ($cari > 0){
  $hasil = mysql_query("INSERT INTO tgagal(nim,nama,keterangan) VALUES('$nim','$nama','Duplikasi NIM')");
 }
 else{
  // setelah data dibaca, sisipkan ke dalam tabel tsukses
  $hasil = mysql_query("INSERT INTO tmahasiswa(nim,nama,alamat,jurusan,hp) VALUES('$nim','$nama','$alamat','$jurusan','$hp')");
 }
}

echo "Berhasil";
?>


langsung saja bisa Anda jalankan melalui http://localhost/namaFolder/form_import.php

Skrip yang dibuat diatas ditulis dengan menggunakan database MySQL, namun jika Anda menginginkan menggunakan database SQL Server, cukup ubah saja mysql nya menjadi mssql .. semoga tutorial kali ini dapat memberikan manfaat kepada Anda

recommend to friends
  • twitter

Artikel Terkait

MySQL Deprecated? Bagaimana Jika Sudah Terlanjur Menggunakan?

MySQL Deprecated? Bagaimana Jika Sudah Terlanjur Menggunakan?

23-03-2020 0
PHP: Menghitung Jumlah Hari Tertentu pada Periode Tanggal Tertentu

PHP: Menghitung Jumlah Hari Tertentu pada Periode Tanggal Tertentu

31-12-2018 0
Mengirim Email Lampiran di PHP (File Attachment)

Mengirim Email Lampiran di PHP (File Attachment)

16-01-2017 0
Membuat Menu Tree Sendiri

Membuat Menu Tree Sendiri

07-11-2016 0

Komentar

  1. Jefri
    06-01-2012, 10:11:42

    wow.. mantabs.. pertamax.. baru saja sy mau tanya soal filtering excel ini, malah uda diposting duluan, barusan lagi.. ga jadi nanya dah.. tq master agus :D

  2. Agus Saputra
    06-01-2012, 17:00:18

    Jefri @ mantab dah kalo gitu.. =D

  3. enasri
    16-01-2012, 21:56:56

    goods job tetap berkarya ....mas kalau dari ms.accses 2003 ke my sql codingnya gimana .... kirim ke email: [email protected]

  4. mantab
    12-03-2012, 20:11:15

    mantab Mas, tapi mau tanya nih..
    itu kan scra Default file excel yg diimport Sheet1 (sheet pertama) kalo misal yg akan saya import "sheets 2" bagaimana mas?
    thanks.. perlu bgt nih.

  5. Agus Saputra
    13-03-2012, 09:42:58

    mantab @ untuk lebih jelas, bisa klik di http://code.google.com/p/php-excel-reader/wiki/Docu mentation ...

  6. radhitya
    26-03-2012, 13:59:02

    mas kalo import dengan excel yang telah didesign halamanya gmna cara ngambil datanya??

  7. Agus Saputra
    26-03-2012, 16:55:08

    radhitya @ mudah kok.. bisa Anda tuliskan seperti skrip dibawah:
    <?php
    $namaFile = "namafile.xls";
    header("Pragma: public");
    header("Expires: 0");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    header("Content-Type: application/force-download");
    header("Co ntent-Type:application/octet-stream");
    header("Cont ent-Type:application/download");
    header("Content- Disposition: attachment; filename=$namaFile");
    header("Content-Tr ansfer-Encoding: binary ");

    // skrip selanjutnya (sama seperti menampilkan data pada konten web), desain bisa menggunakan kode html..
    misalnya:

    echo "<table>
    <tr bgcolor=#ccc>
    ....


    nanti pada buku selanjutnya ada pembahasan mengenai case tersebut..

  8. yan
    31-05-2012, 18:19:59

    alhamdulillah sukses make programnya mas
    makasi banyak
    tinggal gmn cara sbaliknya
    download ke excell

  9. Agus Saputra
    01-06-2012, 09:00:51

    yan @ sippp.. :) nanti saya akan share mengenai download ke excel.. :)

  10. ss joker
    06-09-2012, 11:22:49

    matur nuwun...pak,mas,om,pakdhe...

  11. rohman
    23-02-2013, 09:35:23

    tanya mas...
    untuk file yang di upload dengan script spt;

    $data = new spreadsheet_excel_reader($_FILES['userfile 9;]['tmp_name']);


    nah yang au mau tanyakan :
    ['usrfile'] itu di isi apa yaa/ ttep di biarkan gtu aja
    dan juga ['tmp_name']... mohon bantuanya mas.... tolong balas di email aq. [email protected]

  12. rohman
    23-02-2013, 09:36:42

    aku boleh minta alamat emailnya mas gak... atau no hp... bwt temen sharing aja

  13. rohman
    23-02-2013, 09:38:19

    boleh minta no hp nya gk mas... atau emailnya... bwt sharing aja...

  14. Agus Saputra
    23-02-2013, 12:20:59

    rohman @ email saya di:
    [email protected]

    $_FILES['userfi le']['tmp_name']
    userfile itu sumbernya dari file formnya..
    <input type=file

    sedangkan tmp_name itu bawaan kode php, temporary name..

  15. ardi
    26-02-2013, 12:57:02

    blognya bagus sekali mas agus, tetap dikembangkan dengan ilmu2x baru yah mas!

  16. lia
    14-03-2013, 11:55:42

    mas agus . mau nanya dong, kalo pengen update data di excel kita upload lagi d database ikut ke update tpi ga boleh ng update nim pie mas?

  17. Agus Saputra
    14-03-2013, 23:39:04

    lia @ ya nim nya jangan ditulis diskrip donk.. UPDATE nya jangan masukkan nim.. coba lihat skripnya..

  18. lia
    18-03-2013, 10:54:23

    kak agus makasi update nya uda bsa deng. n mau nanya lagi nih, kalo aku punya 2 table:
    1. table vendor : id_vendor, nama
    2. table barang : id_barang, id_vendor, nama barang, qty

    di excel nya datanya sbb:
    id_barang , nama vendor, nama barang, qty
    A001 , PT Cantika, Sunsilk, 1 doz

    nah saat upload excel di table barang itu ke uploadnya

    A001, 1, Sunsilk, 1 doz

    pie yaa ?

  19. iponk
    02-04-2013, 22:48:28

    maaf mas nanya, kalo integrasi database caranya gmana ya?
    kan ada 2 Database di server yang beda, ketika database A berubah maka database B ikut berubah..

  20. ivan
    27-05-2013, 09:46:36

    Notice: Undefined offset: 0 in C:\xampp\htdocs\xxx\excel_reader2.php on line 390

  21. aditya sandy
    20-08-2013, 10:22:40

    mas agus, saya aditya. .
    kemarin saya abis download coding+file dari blognya mas agus tentang "Import Excel to Database Menggunakan PHP dengan Filtering Data Besyarat."

    waktu saya coba, data di file excel-nya berhasil masuk ke database.
    tpi di browser saya kok ada message seperti ini :

    Deprecated: Assigning the return value of new by reference is deprecated in C:\xampp\htdocs\import\excel_reader2.php on line 916
    Berhasil

    itu maksudnya apa mas agus ? ? mhon bantuannya ? ?

  22. azis
    16-08-2014, 08:14:36

    klo di dump bisa keluam Gan, tp klo di query ga masuk ke DB apa ada yang salah

  23. Agus Saputra
    18-08-2014, 16:43:13

    azis @ maksudnya apakah kasusnya sama dengan sdr aditya sandy diatas? mengenai depreciated?.. itu ada skrip php pada excel_reader yang ternyata sudah tidak digunakan di PHP terbaru..

    Coba ganti function split() dengan explode() pada baris ke 844 dan 79. Sedangkan untuk baris 916 silakan ganti operator “=&” dengan “=”.

  24. iwan setiawan
    22-08-2014, 10:04:49

    terimakasih atas informasinya. sangat bermanfaat

  25. Agus Saputra
    23-08-2014, 09:17:45

    iwan setiawan @ sama2 mas..

  26. victor
    01-09-2014, 03:14:49

    mas agus, request fungsi barcode reader pada buku selanjutnya.. jadi ndak hanya fungsi CRUD saja...thanks

  27. Agus Saputra
    01-09-2014, 07:00:32

    victor @ sebenarnya untuk barcode reader, tidak ada skrip khusus mas, untuk membaca barcode.. cukup laser, dan otomatis kode akan terscan dan otomatis enter.. Pembahasan ini mudah2an akan terbit dalam 3-4 bulan dengan aplikasi bertajuk Point of Sales Web Base bernilai puluhan juta rupiah dan sudah teruji di beberapa perusahaan.. :)

  28. jevry
    12-09-2014, 14:14:05

    mas, bisa gak program pencarian php ke database exel.

  29. faizal
    04-11-2014, 03:00:37

    mas mau tanya, kenapa kok punya saya gagal import ya? padahal udah berhasil kebaca trus kalo querynya di tampilin udah kebuat query nya
    tapi setelah cek database belum ada recordnya

  30. Agus Saputra
    04-11-2014, 14:28:31

    faizal @ mungkin ada kode di excelnya depreciated mas.. mungkin mas menggunakan server terbaru? ini postingan tahun 2012.. :) saya akan update untuk yang terbarunya .. mungkin bisa menggunakan PHPExcel untuk class excelnya

  31. yura
    28-08-2016, 05:03:07

    thx mas.. sangat membantu.

  32. nasib
    09-03-2017, 08:23:07

    mas gimana caranya impor database yang ada di localhost ke rtf berdasarkan database yang dipilih,jadi saya cetak berdasarkan database yang dipilih.gmn solusi codenya y mas

  33. AGUS SAPUTRA
    14-03-2017, 00:50:39

    nasib @ Mas, jika menggunakan mysqli (improved), bisa menggunakan koneksi:

    $hostName = "localhost";
    $username = "root";
    $password = "";
    $dbName = "dbname1";
    $dbName2 = "dbname2";

    $connect1 = mysqli_connect($hostName,$username,$password,$dbName);
    $connect2 = mysqli_connect($hostName,$username,$password,$dbName2);

    // jika ingin menggunakan database 1
    $query = mysqli_query($connect1, "kueri sql");

    // jika ingin menggunakan database 2
    $query = mysqli_query($connect2, "kueri sql");

  34. novan pradana
    23-03-2017, 08:43:52

    mas kok data yang saya upload tidak masuk ke data base ya?
    didalam data base kosong.

  35. AGUS SAPUTRA
    23-03-2017, 14:24:24

    Novan Pradana @ btw mas menggunakan server terbaru atau lama?.. jika server baru, kemungkinan mysql_query tidak berjalan, karena mysql_query sudah dianggap depreciated (tidak digunakan lagi) di server baru .. coba gunakan mysqli_query (improved), mysql_num_rows, gunakan mysqli_num_rows, mysql_connect/mysql_select_db, gunakan mysqli_connect ..

  36. Gunawan
    12-08-2017, 19:27:56

    kenapa eror disini ya mas?

    Notice: Undefined index: userfile in C:\xampp\htdocs\bpkb\proses_import.php on line 10

    Notice: Undefined offset: 0 in C:\xampp\htdocs\bpkb\excel_reader2.php on line 390
    Berhasil

  37. hanes
    19-06-2018, 23:38:13

    Mas kok error iya?
    Notice: Undefined index: userfile in C:\xampp\htdocs\phpdasar1\pertemuan5\proses_import.php on line 10

    Notice: Undefined offset: 0 in C:\xampp\htdocs\phpdasar1\pertemuan5\excel_reader2.php on line 390
    Berhasil

    mohon bantuannya

  38. Wida
    07-04-2019, 19:27:14

    Mas mau tanya,,saya kan import data dlm Exel itu 100 data/baris..
    Tp kenapa yang masuk database nya cuma ada 28 data? Apa ada batas maksimal untuk import data d Excel nya?

  39. Agan
    21-05-2019, 13:51:52

    Terimakasih, sangat bermanfaat mas, btw klo di Codeigniter kaya gmna ya?, klo bisa send ke email [email protected]
    ya :)

  40. Ahmad Syaripudin
    01-11-2019, 21:52:55

    Terima Kasih atas pertolongannya semoga ilmunya makin berkah manfaat,, Amiin

    salam kenal saya dari bogor jawa barat

  41. AGUS SAPUTRA
    08-11-2019, 02:12:52

    Ahmad Syaripudin @ salam kenal kembali

Tinggalkan Komentar


Lihat Semua

Buku Terbaruku

Panduan Praktis dan Jitu Menguasai PHP7 dan SQL Server 2017
Panduan Praktis dan Jitu Menguasai PHP7 dan SQL Server 2017

Like Our Page

Agus Saputra
CV. ASFA Solution

Terpopuler Saat Ini

  • Artikel Terpopuler
  • Buku Terpopuler
(73.744)

Mengubah +62 menjadi 0 dan 0 menjadi +62 - SMS

(60.131)

Membuat Laporan PDF PHP Berdasarkan Kondisi

(50.869)

Sebab Gammu Error 1053

(39.042)

Telah Terbit Buku Best Practice Membangun Aplikasi Pelayanan Publik dengan Framework Codeigniter 3

(37.586)

Import Excel to Database Menggunakan PHP dengan Filtering Data Besyarat

(35.811)

Membuat Menu Tree Sendiri

(34.394)

Membuat Statistika Pengunjung Secara Dinamis

(22.399)

Memanfaatkan SMS API secara Online dengan PHP

(20.761)

Upload Gambar Menggunakan Ajax (jQuery)

(18.893)

Step By Step Membangun Aplikasi SMS dengan PHP dan MySQL

(21.158)

Framework Codeigniter 3 Membangun Aplikasi Penggajian untuk Panduan Skripsi
by Yenda Purbadian

(19.226)

Membuat Aplikasi Absensi Dan Kuesioner Untuk Panduan Skripsi
by Agus Saputra

(18.500)

Proyek Membuat Aplikasi Forum Diskusi Dengan PHP Dan MySQL
by Agus Saputra

(18.050)

Aplikasi Penjualan Dan Pembelian Terintegrasi Dengan VB 6.0. Dan Data Report
by Agus Saputra, Sofyan Maulana, & Sutikno Sofjan

(16.678)

Trik Dahsyat Menjadi Web Master Dengan Framework CakePHP
by Agus Saputra

(16.186)

Aplikasi Pemesanan Tiket Online Berbasis Web Dan Android
by Akhmad Dharma Kasman

(15.644)

Membangun Aplikasi Toko Online Dengan PHP Dan SQL Server
by Agus Saputra

(14.631)

Mega Proyek 125 Juta Sistem Informasi Akademik Kampus
by Agus Saputra

(14.329)

Sistem Informasi Nilai Akademik Untuk Panduan Skripsi
by Agus Saputra

(14.315)

Teknik Cepat Membangun Aplikasi Web Dengan Framework CakePHP
by Agus Saputra

Newsletter

Masukkan email Anda untuk berlangganan informasi kami

Komentar Artikel Terakhir

  • AGUS SAPUTRA pada
    MySQL Deprecated? Bagaimana Jika Sudah Terlanjur Menggunakan?
    04 April 2020 23:36:33
  • Lpk Naura pada
    MySQL Deprecated? Bagaimana Jika Sudah Terlanjur Menggunakan?
    03 April 2020 01:43:24
  • Lpk Naura pada
    Mengirim Email Otomatis dengan Cron Jobs
    03 April 2020 01:41:33
  • Lpk Naura pada
    Mengirim Email Otomatis dengan Cron Jobs
    03 April 2020 01:40:29
  • Didik pada
    Update Source Code Final Project POS Web Base dengan Smarty PHP
    25 Februari 2020 05:46:58

Komentar Buku Terakhir

  • Hijau Generasi pada
    Mengenal Web Security - Kasus Eksploitasi Web dengan Ajax
    28 Maret 2020 21:59:10
  • y. ifliandry pada
    Mega Proyek 75 Juta Aplikasi Inventory Berbasis Web
    20 Maret 2020 03:08:36
  • Subarja Yasin pada
    Mega Proyek 125 Juta Sistem Informasi Akademik Kampus
    06 Februari 2020 09:43:44
  • Fedri pada
    Proyek Membuat Website Periklanan Dengan PHP
    05 Januari 2020 18:09:17
  • er pada
    Proyek Membuat Aplikasi Forum Diskusi Dengan PHP Dan MySQL
    09 Desember 2019 09:09:27
  • Home
  • Cara Pembelian
  • Kontak
© 2023. All Rights Reserved. CV. ASFA Solution, Software Development, IT and Publishing
×
Authorization
Login
Login menggunakan jejaring sosial
Anda juga masuk menggunakan akun facebook Anda.
  • Connect
×
JOIN AGUSSAPUTRA.COM
* All fields required