Tuesday, 4 November 2014

Migrasi Data Excel kedalam MySQL Database

Pada Postingan kali ini saya akan share bagaimana memindahkan isi dari dokumen excel kedalam sebuah database MySQL.

kegunaannya untuk apa sih?

gunanya ya untuk mempercepat penginputan dari data yg sudah ada, jadi tidak kerja dua kali, atau ketika kita mau input data siswa melalui sebuah interface aplikasi yang proses inputnya satu per satu, capek kan, :D

Migrasi itu apasih?

Migrasi adalah memindahkan sebuah data kedalam penyimpanan lain yang lebih bagus, misal dari semi komputer ke komputerisasi. contoh ada sebuah data pada suatu kantor, dimana mereka melakukan penginputan data menggunakan aplikasi seperti excel atau sejenisnya, ketika perusahaan tersebut akan memindahkan data dalam excel kedalam sebuah database maka dibutuhan waktu lama untuk menginputkan semua data yang sudah pernah di input kedalam dokumen excel.

Perlengkapan perang:

1. Aplikasi Xampp.

2. Browser(Mozilla, IE, Chrome, dll).

3. Notepad.

4. Excel.

langkah-langkahnya yaitu:

1. Buat database dengan cara jalankan Browser dan masuk kedalam halaman Admin, tuliskan localhost/phpMyAdmin pada url browser.

buatlah database dengan nama latihan.

tabel dengan nama data_siswa.

tb_data

2. Langkah kedua buka Aplikasi  Excel dan isikan contoh data dibawah ini dan simpan dengan format .CVS

 cell


3. Langkah ketiga masuk kedalam direktori htdocs karena kita pakai xampp, kemudian kita buat folder excelToMySQL.



4. pada langkah ini kita akan membuat aplikasi sederhana yang akan kita gunakan untuk mengimport data dari excel kedalam mysql, berikut adalah Listing kodenya:




[sourcecode language="css"]
?php
//KONEKSI..
$host='localhost';
$username='root';
$password='';
$database='latihan';
mysql_connect($host,$username,$password);
mysql_select_db($database);

if (isset($_POST['submit'])) {//Script akan berjalan jika di tekan tombol submit..

//Script Upload File..
if (is_uploaded_file($_FILES['filename']['tmp_name'])) {
echo &quot;<h1>" . "File ". $_FILES['filename']['name'] ." Berhasil di Upload" . "</h1>";
echo "<h2>Menampilkan Hasil Upload:</h2>";
readfile($_FILES['filename']['tmp_name']);
}

//Import uploaded file to Database, Letakan dibawah sini..
$handle = fopen($_FILES['filename']['tmp_name'], "r"); //Membuka file dan membacanya
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$import="INSERT into data_siswa(id,nama,alamat) values(NULL,'$data[0]','$data[1]')"; //data array sesuaikan dengan jumlah kolom pada CSV anda mulai dari “0” bukan “1”
mysql_query($import) or die(mysql_error()); //Melakukan Import
}

fclose($handle); //Menutup CSV file
echo "<br><strong>Import data selesai.</strong>";

}else { //Jika belum menekan tombol submit, form dibawah akan muncul.. ?&gt;

<!-- Form Untuk Upload File CSV-->
Silahkan masukan file csv yang ingin diupload<br />

Cari CSV File anda:<br />

<br><br><br>
[/sourcecode]

Koneksi dapat di ubah. jika mysql kalian memiliki password maka isikan passwordnya diatas. kemudian simpan dokumen kedalam folder xampp/htdocs/excelToMySQL yang sudah dibuat.

kemudian langkah terakhir adalah menjalankannya melalui browser. seperti pada gambar dibawah ini:
upload
langkahnya adalah pertama pilih file csv yang sudah dibuat pada langkah sebelumya kemudian upload. beres deh. silahkan cek database apakah datanya berhasil tersimpan. :)
Apabila menemui error atau kesulitan jangan sungkan untuk komentar disini yah :)

Oke Terimakasih. Selamat Belajar.

3 comments:

  1. kenapa muncul pesan "doesn't match value count at row 1"

    ReplyDelete
  2. sesuaikan jumlah kolomnya mas, antara excel dan listing code.

    ReplyDelete
  3. min, kenapa isi data yang udah masuk ke database kok ga sesuai sama file excelnya ya?? malah keluar tulisan yang aneh2

    ReplyDelete