您好,我想从 Excel 导入数据并存储在数据库中。以下代码可以正常工作,但它也将列名称作为记录导入。例如,如果 Excel 工作表包含2 列,则第 1 列是名称,第 2 列是电子邮件,并且包含两条记录强>如果我选择浏览并单击导入,它将向表中添加三个记录,还包括其列名称。我只想添加记录。
if(isset($_POST["submit"]))
{
$file = $_FILES['file']['tmp_name'];
$handle = fopen($file, "r");
$c = 0;
while(($filesop = fgetcsv($handle, 1000, ",")) !== false)
{
$name = $filesop[0];
$email = $filesop[1];
$sql = mysql_query("INSERT INTO excel(name, email) VALUES ('$name','$email')");
$c = $c + 1;
}
if($sql){
echo "You database has imported successfully. You have inserted ". $c ." recoreds";
}else{
echo "Sorry! There is some problem.";
}
}
最佳答案
while 循环的第一个循环包含这些列名称。您可以简单地跳过它,因为您已经有一个循环计数器
while(($filesop = fgetcsv($handle, 1000, ",")) !== false)
{
$c = $c + 1;
if ($c == 1)
continue;
$name = $filesop[0];
$email = $filesop[1];
$sql = mysql_query("INSERT INTO excel(name, email) VALUES ('$name','$email')");
}
关于php - 从 Excel 导入数据有困难,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32196507/