[英]Importing .csv file into mysql in php
我有一个.csv文件,但无法将其导入数据库。 我已经使用以下查询解析了.csv文件。 您能帮我如何将数据插入MySql吗?
我的代码是:-
$fp = fopen('test.csv','r') or die("can't open file");
print "<table>\n";
while($csv_line = fgetcsv($fp,1024))
{
print '<tr>';
for ($i = 0, $j = count($csv_line); $i < $j; $i++) {
print '<td>'.$csv_line[$i].'</td>';
$data[] = $csv_line[$i];
}
print "</tr>\n";
}
print '</table>\n';
fclose($fp) or die("can't close file");
在MySQL中,我们可以很容易地将数据从CSV文件导入到表中:
LOAD DATA LOCAL INFILE 'import.csv' INTO TABLE from_csv FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' (FIELD1, FIELD2, FIELD3);
http://dev.mysql.com/doc/refman/5.0/en/load-data.html
示例: http : //www.techtrunch.com/linux/import-csv-file-mysql-table
该代码似乎采用了csv文件,并将其作为表格数据表导出到浏览器中。
您提到了导入到mysql表中,但是没有列出mysql信息。 创建一个mysql表,并尝试将要导入的字段映射到表中的数据库字段。 对我来说,最简单的方法是使用phpmyadmin生成加载数据sql,尽管如果您足够了解更改它的答案中提到的加载数据本地infile也可以使用。
当我学会了如何做时,我使用了本教程。 http://vegdave.wordpress.com/2007/05/19/import-a-csv-file-to-mysql-via-phpmyadmin/
您可以使用此代码。 我希望这会有所帮助
//从上传文件字段上传csv文件后
$ handle = fopen($ _ FILES ['csvfile'] ['tmp_name'],“ r”);
$ header = fgetcsv($ handle);
while(!feof($ handle)){
while((($ data = fgetcsv($ handle,1000,“,”)))!== FALSE){
$ import =“将插入到csvtest中($ header [0],$ header [1],$ header [2],$ header [3],$ header [4],$ header [5],$ header [6])值(“ $ data [0]”,“ $ data [1]”,“ $ data [2]”,“ $ data [3]”,“ $ data [4]”,“ $ data [5]”, '$数据[6]')“;
mysql_query($ import)或die(mysql_error());
}
}
FCLOSE($处理);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.