Php Code to Upload Excel to Mysql
Halo sobat ilmu skripsi lama saya tidak upload artikel karena kesibukan pekerjaan, oke langsung saja ya. pada kesempatan kali ini saya akan mengulas tentang bagaimana melakukan import data dengan PHP dan database mysql.
Import data pada umumnya dibutuhkan untuk menginput information yang berjumlah banyak, sehingga akan sangat lama jika dilakukan penginputan data secara manual / satu persatu. Maka dari itu dibutuhkan import data dan bisanya import data dilakukan dengan menggunakan file excel.
oke langsung saja langkah apa saja yang harus dilakukan, mari simak penjelasan dibawah ini ya sobat.
untuk contoh kasus pada kali ini saya akan membuat contoh kasus import data produk, dan ada beberapa file yang harus dibuat diantaranya bisa anda lihat dibawah ini.
1. file koneksi.php
two. file index.php
3. file import.php
4. file proses-upload.php
v. file download.php
6. file hapus.php
Dari file-file di datas nanti akan saya ulas satu persatu langkah-langkah implementasinya kedalam bentuk koding PHP-Mysqli.
Sebelumnya kita membutuhkan beberapa file yang harus sobat semua download, untuk kebutuhan import data ini seperti file database sql, template excel untuk import data, dan file excel reader yang berfungsi sebagai librari untuk proses import information, sobat semua bisa download filenya dibawah ini.
database sql klik disini
template excel klik disini
excel reader klik disini
Setelah sobat semua download semua file diatas selanjutnya sobat bikin folder didalam binder htdoct dengan nama importdata atau boleh dengan nama lainnya sesuai dengan keinginan sobat semua.
Pindahkan file excel_reader2.php yang sudah di download kedalam folder importdata dan kemudian di dalam binder importdata selanjutnya bikin folder uploadexcel, dan pindahkan file template excel yang bernama dataimport.xls yang sudah di download tadi kedalam folder tersebut.
Langkah selanjutnya adalah mengimport database sql yang sudah sobat download pada link diatas, untuk proses import database caranya mudah. Buka alamat localhost/phpmyadmin dan buat database baru dengan nama sesuai dengan database sql yang di download tadi.
Dalam nama database tersebut isikan dengan nama "contoh_importdata" kemudian klik create. Langkah selanjutnya sobat tinggal melakukan proses import data dengan mengambil file sql yang sudah didownload tadi.
Berikut ada hasil database jika sudah selesai diimport, didalamnya terdapat tabel mproduk yang nantinya akan kita gunakan untuk penyimpanan information import produk
Langkah selanjutnya kita akan membuat file koneksi kedatabase, sobat semuanya bisa menyimpan file nya dengan nama koneksi.php . berikut ada file koneksi.php
koneksi.php
1 two 3 4 five 6 7 8 nine | <?php $koneksi = mysqli_connect("localhost","root","","contoh_importdata"); // Bank check connexion if (mysqli_connect_errno()){ echo "Koneksi database gagal : " . mysqli_connect_error(); } ?> |
Langkah selanjutnya kita membuat file alphabetize.php , dimana didalam file index nantinya akan berfungsi untuk menampilkan halaman information produk yang di import.
Berikut ini adalah kode dari file index.php
index.php
1 2 3 iv 5 6 7 8 9 10 11 12 13 14 15 sixteen 17 18 19 twenty 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 55 56 | <h2 marshal= "center" >Import Data Excel PHP-Mysqli by ilmuskripsi.com</h2> <hr /> <table width= "300" border= "0" > <tr> <td width= "142" > <a href= "hapus.php" onclick= "javascript: render ostend('Anda yakin ingin menghapus data ?')" > <input blazon= "button" name= "button" class= "btn btn-danger" value= "Kosongkan Data" /> </a> </td> <td width= "142" > <a href= "import.php" > <input type= "button" proper noun= "push" course= "btn btn-danger" value= "Import Data" /> </a> </td> </tr> </table> <60 minutes /> <table width= "100%" border= "1" align= "center" rules= "all" > <tr bgcolor= "#CCCCCC" > <td width= "31" ><div align= "centre" ><strong>No</strong></div></td> <td width= "143" ><strong>Kode </strong></td> <td width= "284" ><strong>Nama</strong></td> <td width= "140" ><strong>Harga</strong></td> <td width= "155" ><stiff>Berat</strong></td> <td width= "175" ><strong>diskon</strong></td> <td width= "184" ><strong>Kondisi</strong></td> <td width= "171" ><strong>Keterangan</potent></td> </tr> <?php include "koneksi.php"; $no = ane; $information =mysqli_query($koneksi,"select * from mproduk"); while($arraytampil =mysqli_fetch_array($information)){ ?> <tbody id= "myTable" > <tr><td height= "42" ><div align= "centre" > <?php echo $no ++; ?> </div></td> <td> <?php repeat " $arraytampil[kode] "; ?> </td> <td> <?php echo " $arraytampil[nama] "; ?> </td> <td> <?php $harga = number_format($arraytampil['harga'],0, ".", "."); echo "Rp. $harga "; ?> </td> <td> <?php echo " $arraytampil[berat] "; ?> </td> <td> <?php echo " $arraytampil[disc] "; ?> %</td> <td> <?php repeat " $arraytampil[kondisi] "; ?> </td> <td> <?php echo " $arraytampil[ket] "; ?> </td> </tr> </tbody> <?php } ?> </table> |
Setelah kita melakuan pengkodingan file index.php tahapan selanjutnya kita membuat file import.php , didalam file import ini nantinya proses import data file excel akan dilakukan, berikut adalah kode dari file import.php
import.php
ane 2 iii 4 five 6 7 8 nine 10 eleven 12 xiii fourteen 15 16 17 18 19 twenty 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 fifty 51 | <h2 align= "center" >Import Data Excel PHP-Mysqli by ilmuskripsi.com</h2> <60 minutes /> <tabular array width= "382" border= "0" > <tr> <td width= "218" ><a href= "download.php" target= "_blank" > <input blazon= "submit" name= "push button" class= "btn btn-danger" value= "Download Template Excel" /></a></td> <td width= "154" > <a href= "index.php" > <input type= "submit" name= "push" grade= "btn btn-danger" value= "Data Produk" /> </a></td> </tr> </tabular array> <hr /> <class method= "postal service" enctype= "multipart/class-information" action= "proses-upload.php" > <table width= "1284" edge= "0" > <tr> <td> </td> <td><font color= "#FF0000" > *SILAHKAN DOWNLOAD TEMPLATE FILE EXCEL JIKA BELUM MEMPUNYAI FILENYA <BR /> *PASTIKAN KODE PRODUK TIDAK ADA YANG KOSONG JIKA ADA YANG KOSONG MAKA PROSES IMPORT Data GAGAL <BR /> *PASTIKAN KODE PRODUK DALAM FILE EXCEL TIDAK BOLEH SAMA DENGAN YANG LAIN, JIKA ADA YANG SAMA MAKA SALAH SATU PRODUK TIDAK AKAN MASUK KEDALAM DATABASE<BR /> *PENGISIAN KOLOM HARGA HANYA BOLEH DI ISI ANGKA TIDAK ADA TITIK KOMA </font></td> </tr> <tr> <td> </td> <td> </td> </tr> <tr> <td width= "13" > </td> <td width= "1261" >Silahkan Pilih File Excel : </td> </tr> <tr> <td> </td> <td> </td> </tr> <tr> <td> </td> <td><input proper noun= "filedata" blazon= "file" required= "required" ></td> </tr> <tr> <td colspan= "2" ><hour></td> </tr> <tr> <td> </td> <td><input name= "upload" blazon= "submit" value= "Import" course= "btn btn-success" ></td> </tr> </table> </form> |
Setelah file import.php selesai kita implementasikan kedalam koding selanjutnya adalah membuat proses upload information, pada file kali ini kita beri nama proses-upload.php, untuk implementasi kodingnya anda bisa melihatnya dibawah ini.
proses-upload.php
1 2 3 4 5 6 seven eight nine 10 xi 12 13 14 15 sixteen 17 18 19 20 21 22 23 24 25 26 27 28 29 xxx 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 fifty 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 seventy 71 72 73 74 75 76 77 78 79 80 81 82 83 | <?php // menghubungkan dengan koneksi include 'koneksi.php'; // menghubungkan dengan library excel reader require_once "excel_reader2.php"; //// upload file xls $target = basename($_FILES['filedata']['name']) ; move_uploaded_file($_FILES['filedata']['tmp_name'], $target); // beri permisi agar file xls dapat di baca chmod($_FILES['filedata']['name'],0777); // mengambil isi file xls $data = new Spreadsheet_Excel_Reader($_FILES['filedata']['proper noun'],false); // menghitung jumlah baris data yang ada $jumlah_baris = $information -> rowcount($sheet_index = 0); // jumlah default data yang berhasil di import $berhasil = 0; for ($i = 2; $i <= $jumlah_baris; $i ++){ // menangkap data dan memasukkan ke variabel sesuai dengan kolumnya masing-masing $kode = $data -> val($i, 1); //kode $nama = $data -> val($i, ii); //nama $berat = $data -> val($i, 3); //berat $harga = $data -> val($i, 4); //harga $disc = $data -> val($i, 5); //disc $kondisi = $data -> val($i, 6); //kondisi $ket = $data -> val($i, 7); //ket //mengecek jika kolom kode produk pada template excel ada yang kosong $cari = mysqli_num_rows(mysqli_query($koneksi,"SELECT kode FROM mproduk WHERE kode=' $kode '")); if (empty($kode)){ echo "<script>window.alert('import gagal kode produk tidak boleh ada yang kosong !')</script>"; echo "<script>window.location='" . $_SERVER['HTTP_REFERER']. "'</script>"; } elseif ($cari > 0){ $query =mysqli_query($koneksi,"UPDATE mproduk SET kode=' $kode ', nama=' $nama ', berat=' $berat ', harga=' $harga ', disc=' $disc ', kondisi=' $kondisi ', ket=' $ket ' WHERE kode=' $kode '"); } else{ // input information ke database (table mproduk) $query =mysqli_query($koneksi,"INSERT into mproduk (kode,nama,berat,harga,disc,kondisi,ket) values(' $kode ',' $nama ',' $berat ',' $harga ',' $disc ', ' $kondisi ',' $ket ')"); } $berhasil ++; } // hapus kembali file .xls yang di upload tadi unlink($_FILES['filedata']['proper noun']); // alihkan halaman ke alphabetize.php repeat "<script>window.alert('sukses import $berhasil information!')</script>"; echo "<script>window.location='index.php'</script>"; ?> |
Inti dari proses upload data dengan excel ini adalah pada file diatas dimana fungsi logika kita masukan pada file proses-upload.php.
Ketentuan logika dengan kondisi yang kita buat yaitu
- Jika didalam tabel mproduk belum ada data dengan kode produk yang berada dalam file excel, maka sistem akan menginputkan data baru.
- Jika status didalam tabel mproduk sudah ada kode produk yang tersimpan dan sama dengan kode produk didalam file excel maka sistem akan mengupdate, dengan kata lain. Data yang lama tidak terhapus akantetapi terupdate sesuai dengan kode produk yang sama.
- Jika didalam file excel ada kode produk yang belum terisi/kosong maka proses import akan gagal.
Untuk keterangan kode program diatas sobat bisa baca langsung di file yang sudah saya kasih komentar pada script diatas.
Untuk tahap selanjutnya adalah membuat file download.php dan hapus.php , untuk filenya sobat bisa lihat pada kodingan dibawah ini.
download.php
one two 3 four 5 vi vii viii 9 10 11 12 xiii 14 15 16 17 eighteen 19 20 21 22 23 24 25 26 27 28 29 | <?php // Downloads files // Tentukan folder file yang boleh di download $folder = "uploadexcel/"; $filename = "dataimport.xls"; $file_extension = strtolower(substr(strrchr($filename,"."),1)); // Lalu cek menggunakan fungsi file_exist if (! file_exists($folder . $filename)) { echo "<h1>Access forbidden!</h1> <p>File Sudah Tidak Ada</p>"; exit; } else if ($file_extension == 'php'){ repeat "<h1>Access forbidden!</h1> <p>Maaf, file yang Anda download sudah tidak tersedia atau filenya (direktorinya) telah diproteksi. <br />.</p>"; exit; } // Apabila mendownload file di folder else { //header("Cache-Control: public"); //header("Content-Description: File Transfer"); header("Content-Disposition: zipper; filename=" . basename($filename)); header("Content-Type: application/octet-stream;"); //header("Content-Transfer-Encoding: binary"); readfile("uploadexcel/" . $filename); } ?> |
hapus.php
1 2 iii iv 5 six 7 | <?php include "koneksi.php"; mysqli_query($koneksi,"TRUNCATE Tabular array mproduk"); echo "<script>window.alert('information berhasil di hapus!')</script>"; echo "<script>window.location='" . $_SERVER['HTTP_REFERER']. "'</script>"; ?> |
Pada file download.php berfungsi untuk mendownload template excel yang nantinya akan kita isi data produk yang akan kita import. Sedangkan pada file hapus.php berfungsi untuk mengosongkan data dalam tabel mproduk yang kita buat.
Setelah semuanya selesai kita implementasikan kedalam bentuk koding selanjutnya sobat tinggal mencoba kedalam browser dengan mengakses url localhost/importdata.
Dan berikut adalah tampilan dari hasil kodingan diatas.
|
| Tampilan file index.php |
|
| tampilan file import.php |
|
| Tampilan information setelah di import |
Untuk proses upload data sobat semua tinggal browse file template excel yang sobat download diawal tadi.
Jika sobat semua ingin file lengkapnya sobat bisa minta file langsung ke admin dengan syarat sudah subscribe channel youtube dibawah ini, dan tinggalkan pesan positif dikolom komentar dengan meninggalkan email yang sudah subcribe channel yang disediakan.
File akan dikirim langsung setelah komentar masuk dan status email sudah subsribe.
nb : komentar akan di shortir terlebih dahulu jadi tidak langsung tampil di kolom komentar ya sobat.
Terimakasih semoga bermanfaat
delfabbrofess1996.blogspot.com
Source: https://www.ilmuskripsi.com/2020/10/membuat-import-data-excel-php-mysqli.html
0 Response to "Php Code to Upload Excel to Mysql"
Post a Comment