File CSV yang kita miliki adalah data asal, karena hanya dibuat sebagai contoh pengolahan data csv dengan PHP. Berikut ini isi file contoh.csv

Nama1,Kota1,Negara1
Nama2,Kota2,Negara2
Nama3,Kota3,Negara3
Nama4,Kota4,Negara4
Nama5,Kota5,Negara5
Nama6,Kota6,Negara6
Nama7,Kota7,Negara7
Nama8,Kota8,Negara8
Nama9,Kota9,Negara9
Nama10,Kota10,Negara10
Nama11,Kota11,Negara11
Nama12,Kota12,Negara12

file diatas bisa dibaca dengan PHP dan menghasilkan data yang sama, scriptnya bisa dilihat dibawah ini csv1.php

$file = "contoh.csv";
$data=fopen($file,'r');
while($baris=fgets($data)){
    echo $row."<br>";
   }
?>

Hasil eksekusi script diatas sama dengan file aslinya, jadi tidak perlu ditampilkan disini :). Kita bisa juga memecah file contoh.csv diatas dengan bantuan fungsi PHP fgetcsv

<?php
if (($handle = fopen("contoh.csv", "r")) !== FALSE) {
      while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $num = count($data);
        for ($c=0; $c < $num; $c++) {
           echo $data[$c] . "<br/>";
        }
    }
}
?>

hasil keluaran script diatas

Silahkan dimodifikasi sesuai dengan kebutuhan, cukup bermain-main dengan file diatas. Sekarang kita membuat script import CSV ke MySQL dengan PHP
Untuk menyimpan file diatas kita siapkan database bernama belajar dengan table yang bernama contoh

CREATE TABLE IF NOT EXISTS `contoh` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nama` varchar(20) NOT NULL,
  `kota` varchar(20) NOT NULL,
  `negara` varchar(20) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

file script import.php

<?php 
$username = "root";
$password = "PASSWORD";
$database = "belajar"; 
mysql_connect("localhost", $username, $password);
mysql_select_db($database);
 
$file = "contoh.csv";
$handle = fopen($file,"r");
 
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
    $query ="INSERT INTO contoh VALUES 
                (
                 NULL,
                 '".addslashes($data[0])."',
                 '".addslashes($data[1])."',        
                 '".addslashes($data[2])."'
                 )
    ";
    echo "< pre>";
    print_r($query);
    echo "</ pre>";
    $hasil = mysql_query($query);
}
?>

Dengan begitu semua data yang ada di file contoh.csv sudah masuk ke database MySQL/MariaDB
data masuk database.

Download:

Join the Conversation

1 Comment

Your email address will not be published. Required fields are marked *

  1. data saya sampai 30rbu lebih, makai metode ini selalu terkendala load time limit. ada betode lain tidak?bisalnya hasil baca excel dijadikan array dulu?