【发布时间】:2014-09-17 06:35:34
【问题描述】:
我将向您发送我用于将数据从 csv 文件插入数据库表的代码,但它不会从开头插入数据并连续到最后一条记录,而是随机获取记录请建议我更改当前代码这样它就会从开始连续获取记录,直到最后从 csv 文件中获取每条记录
<?php
$connect = mysql_connect("localhost","root","");
set_time_limit(0);
if (!$connect)
{
die('Could not connect to MySQL: ' . mysql_error());
}
$cid=mysql_select_db("bond1",$connect);
define("CSV_PATH","D:/wamp/www/csvfile/");
$csv_file=CSV_PATH."file.csv";
$csvfile=fopen($csv_file, 'r');
$theData=fgets($csvfile);
$i=0;
while(!feof($csvfile))
{
$csv_data[] = fgets($csvfile,1024);
$csv_array=explode(",", $csv_data[$i]);
$insert_csv=array();
$insert_csv['name']=$csv_array[0];
$insert_csv['address']='http://'.$csv_array[1];
$insert_csv['duns_number']=$csv_array[2];
$insert_csv['idnum']=$csv_array[3];
$query="insert into companyinfo(name,address,duns_number,id_number)values('".$insert_csv['name']."','".$insert_csv['address']."','".$insert_csv['duns_number']."','".$insert_csv['idnum']."')";
$n=mysql_query($query,$connect);
++$i;
}
fclose($csvfile);
echo "File data successfully imported to database!!";
mysql_close($connect);
?>
【问题讨论】:
-
set_time_limit(0); $i=0; while(!feof($csvfile)) { $csv_data[] = fgets($csvfile,1024); $csv_array=explode(",", $csv_data[$i]); $insert_csv=数组(); $insert_csv['name']=$csv_array[0]; $insert_csv['address']='http://'.$csv_array[1]; $insert_csv['duns_number']=$csv_array[2]; $insert_csv['idnum']=$csv_array[3]; “插入公司信息(名称,地址,duns_number,id_number)值('”.$insert_csv['name']。“','”.$insert_csv['address']。“','”.$insert_csv[' duns_number']."','".$insert_csv['idnum']."')"; ++$i; } ?>
-
请将此代码添加到您的帖子中,而不是在 cmets 中。可以听到阅读
-
我已经把帖子里的代码发给你了,请看。