如何将CSV表插入Mysql数据库?

时间:2016-01-13 07:54:52

标签: php database csv

我有一个简单的上传页面,允许用户将CSV文件上传到服务器。

上传后,页面会将CSV文件显示为html表格格式

将CSV文件显示为HTML的代码:

<?php
echo "<table class='tbl1'>\n\n";

echo "<tr>";
echo "<th>GOUP NO</th>";
echo "<th>PID CODE</th>";
echo "<th>ID CODE</th>";
echo "<th>DESCRIPTION</th>";
echo "</tr>";

$f = fopen("upload\micro_center.csv", "r");
while (($line = fgetcsv($f)) !== false) {
    echo "<tr>";
    foreach ($line as $cell) {
            echo "<td>" . htmlspecialchars($cell) . "</td>";
    }
    echo "</tr>\n";
}
fclose($f);
echo "\n</table>";
?>

我想添加一个关于如何将数据插入CSV文件或将html表显示到MSSQL数据库的查询。

注意:表标题和数据库表列具有相同的名称

CSV文件:

0,G068,CNDLDS,Candelaria District
0,CNDLDS,CNDLDSA,Babancal ES
0,CNDLDS,CNDLDSB,Binabalian ES
0,CNDLDS,CNDLDSC,Candelaria Central
0,CNDLDS,CNDLDSD,Catol ES

感谢您的回答

1 个答案:

答案 0 :(得分:0)

使用以下代码:

//get the csv file 
$file = $_FILES[csv][tmp_name];  // your csv file here
$handle = fopen($file,"r"); 

//loop through the csv file and insert into database 
do { 
    if ($data[0]) { 
        mysql_query("INSERT INTO your table (GOUP_NO, PID_CODE, ID_CODE, DESCRIPTION) VALUES 
            ( 
                '".addslashes($data[0])."', 
                '".addslashes($data[1])."', 
                '".addslashes($data[2])."',
                '".addslashes($data[3])."'  
            ) 
        "); 
    } 
} while ($data = fgetcsv($handle,1000,",","'")); 
//