Last active
May 11, 2016 17:08
-
-
Save amin007/897d9291b9d82f3b9746e0602919ce27 to your computer and use it in GitHub Desktop.
upload-csv-file-with-file-name-into-mysql-using-php
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
function tambahSqlBanyakNilai($myTable, $medan, $senaraiData) | |
{ | |
//echo '<pre>$data->', print_r($data, 1) . '</pre>'; | |
# set sql | |
$sql = "INSERT INTO $myTable\r($medan) VALUES \r"; | |
$sql .= implode(",\r", $data) . ";"; | |
echo '<pre>$sql->', print_r($sql, 1) . '</pre>'; | |
# bertaubatlah dari guna mysql_query | |
# gunalah mysqli atau pdo | |
mysql_query($sql) or die(mysql_error()); | |
} | |
function panggilMedan($posmen) | |
{ | |
$medan = '`' . implode("`,`", $posmen[0] ) . '`'; # buat medan | |
//echo '$medan = ' . $medan . '<hr>'; | |
# pulangkan pemboleubah | |
return $medan; | |
} | |
function panggilBanyakData($posmen) | |
{ | |
$dataS = array(); | |
foreach($posmen as $key=>$data): | |
if($key!=0) | |
$dataS[$key] = "('" . implode("','", $data ) . "')"; | |
endforeach; | |
//echo '<pre>$dataS = ' . $dataS . '</pre><hr>'; | |
# pulangkan pemboleubah | |
return $dataS; | |
} | |
function semakfail($fail, $bacaData) | |
{ | |
$kira = 0; | |
# buka fail | |
if (($handle = fopen($fail, "r")) !== FALSE) | |
{ | |
while (($baris = fgetcsv($handle, 1000, ",")) !== FALSE) | |
{ | |
$bacaData[$kira] = explode(';', $baris[0]); | |
$kira++; | |
} | |
} | |
fclose($handle); | |
return $bacaData; # pulangkan pembolehubah | |
} | |
function masukkanFail() | |
{ | |
if (is_uploaded_file($_FILES['filename']['tmp_name'])) | |
{ | |
echo "<h1>" . "File ". $_FILES['filename']['name'] ." uploaded successfully." . "</h1>"; | |
echo "<h2>Displaying contents:</h2>"; | |
readfile($_FILES['filename']['tmp_name']); | |
} | |
$posmen = semakfail($_FILES['filename']['tmp_name'], array()); | |
$medan = panggilMedan($posmen); | |
$senaraiData = panggilBanyakData($posmen); | |
# pulangkan pemboleubah | |
return array($medan,$senaraiData); | |
} | |
$deleterecords = "TRUNCATE TABLE upload"; //empty the table of its current records | |
# bertaubatlah dari guna mysql_query | |
# gunalah mysqli atau pdo | |
mysql_query($deleterecords); | |
//Upload File | |
if (isset($_POST['submit'])) | |
{ | |
$myTable = 'upload'; | |
list($medan,$senaraiData) = masukkanFail(); | |
tambahSqlBanyakNilai($myTable, $medan, $senaraiData); | |
print "Import done. Please go to page:<a href='entry.php'><h5><b>Entry & Export CSV File</b></h5></a>"; | |
}else {//view upload form | |
?>Please select a <b>NEW</b> .CSV file by clicking Choose File button. " | |
Click on Upload button <b>ONLY</b> after a .CSV file has been browsed and selected. <p> </p><br/> | |
<form enctype="multipart/form-data" action="uploadcsv.php" method="post"> | |
File name to import & upload:<br /> | |
<input size='50' type='file' name='filename'><br/> | |
<input type='submit' name='submit' value='Upload'> | |
</form> | |
<?php | |
} | |
?> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment