Upload, Insert File Txt

By , April 28, 2016,
Upload, Insert File Txt

Upload, Insert File Txt

Upload, Insert File Txt Ke Tabel Database – Alasan saya memposting tutorial ini adalah ketika saya ingin menginput sebuah isi dari file txt yang berjumlah ribuah baris ke dalam tabel database. Input tersebut mengunakan query sql yang dimasukkan kedalam sebuah looping.

Dan yang ingin saya lakukan adalah saya akan mengupload file txt ke server saya dan isi baris dari file txt tersebut dimasukkan kedalam tabel database. Konsep yang terjadi yaitu file txt di upload ke server, kemudian di baca, dan selanjutnya di eksekusi dengan query insert.

Permasalah yang terjadi berdasarkan studi kasus saya, pernah saya coba dengan jumlah baris berjumlah kurang 500 bari, 30424 baris, proses yang ditimbulkan sedikit relatif lama, nah untuk mengatasi hal itu, pada script proses perlu di tambahkan set waktu eksekusi. Jika tidak di tambahkan maka, server php akan mengalami down sebelum proses query tersebut berhasil dilakukan.

Script php upload, insert file txt

1. Form input file


<form role="form" action="upload.php" method="POST" enctype="multipart/form-data" method="POST" data-toggle="validator">
 <div class="form-group">
 <label></label>
 <input type="file" class="form-control" placeholder="Kata Tanya" name="txt" required>
 </div>
 </div>
 <div class="panel-footer">
 <button type="submit" class="btn btn-primary">Upload</button>
 </div>
 </form>

2. upload.php


<?php
error_reporting(E_ALL ^ (E_NOTICE | E_WARNING));

$server = "localhost";
$username = "root" ;
$password = "" ;
$database = "nm_db_mu";

$con = new mysqli($server,$username,$password,$database);
if($con->connect_error){
 die("Koneksi gagal: ".$con->connect_error);
}
ini_set('max_execution_time', 1500); //300 seconds = 5 minutes
function uploadfile($file){
 $type = $_FILES['txt']['type'];
 $size = $_FILES['txt']['size'];
 $tmp = $_FILES['txt']['tmp_name'];
 if(isset($file)){
 $file_upload=1;
 $dir = "../../file/";
 $loc=$dir.$file;
 $url ="/tanya/?modul=katadasar&aksi=import";
 if ($size>25000000){
 echo '
 <script>
 alert("File harus < 25MB");
 window.location="'.$url.'";
 </script>';
 $file_upload=0;
 }

if (!($type == "text/plain")){
 $file_upload=0;
 echo '
 <script>
 alert("Harus file txt");
 window.location="'.$url.'";
 </script>';
 }

 if (file_exists($loc)) {
 echo '
 <script>
 alert("File dengan nama tersebut sudah ada");
 window.location="'.$url.'";
 </script>';
 $file_upload = 0;
 }

 if($file_upload==1){
 move_uploaded_file($tmp, $loc);
 }else{
 echo '
 <script>
 alert("Gagal upload");
 window.location="'.$url.'";
 </script>';
 }
 }else{
 echo '
 <script>
 alert("File tidak ada");
 window.location="'.$url.'";
 </script>';
 }
}

$file = $_FILES['txt']['name'];
 uploadfile($file);

 $lines = file('http://localhost/tanya/file/'.$file);
 for($i=0; $i < count($lines); $i++){
 $sql = "INSERT INTO katadasar (katadasar) VALUES ('$lines[$i]')";
 $r = $con->query($sql);
 }
 //echo "$sql";exit;
 if($r === TRUE){
 echo "
 <script>
 window.location=\"/tanya/?modul=katadasar\";
 </script>";
 } else{
 echo "Insert gagal:".$con->error;
 }
 $con->close();

?>

Demikian Upload, Insert File Txt Ke Tabel Database semoga bermanfaat. Jika ada yang belum paham, mengenai panduan dan tutorial diatas silahkan hubungi kami dengan komentar atau kontak langsung.

Leave a Reply

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