我在通过PHP将我的CSV文件导入到MySQL服务器时遇到问题。 我已经搜索了答案,尝试了各种代码,并将它们添加到我的代码中。 CSV文件只有一列包含500多行数据,这些数据是电子邮件。 我希望将它们导入到我的服务器中,并将它们导入列电子邮件中的表格电子邮件。 我不断收到未定义的索引错误。无法使用PHP导入CSV到MySQL
<?php
if (isset($_POST["Import"]))
{
$host = "localhost";
$db_user = "root";
$db_password = "";
$db = "trabalho1";
$conn = mysql_connect($host,$db_user,$db_password) or die (mysql_error());
mysql_select_db($db) or die (mysql_error());
echo $filename=$_FILES["file"]["tmp_name"];
if ($_FILES["file"]["size"] > 0)
{
$file = fopen($filename, "r");
while (($emapData = fgetcsv($file, 10000, ",")) !== FALSE)
{
print_r($emapData);
$sql = "INSERT into email(email) values('$emapData[0]')";
mysql_query($sql);
}
fclose($file);
echo "CSV File has been successfully Imported";
header("Location:../listar/listaremail.php");
}
else
echo "Invalid File:Please Upload CSV File";
}
?>
我的表格来自于一个html页面,它就是这种格式。
<form id="formulario1" name="post" enctype="multipart/form-data" method="post" onsubmit="return validar(this);" action="../inserir/inseriremailexcel.php">
<fieldset>
<legend>A partir do Excel</legend>
<label>Email:</label>
<input type="file" name="file" id="file" size="150"> <br>
</fieldset>
<br>
<fieldset>
<button type="submit" name="Import" value="Import">Upload</button>
</fieldset></h1>
Atenção. A data e hora actual serão gravadas com o seu registo.
</form>
有关该问题的任何提示?我访问过各种网页,并尝试了很多修补程序,但没有一个能够正常工作。
完整的错误是如下 说明:未定义指数:在C文件:\ XAMPP \ phpMyAdmin的\ trabalho \ inserir \ inseriremailexcel.php第12行
说明:未定义指数:文件在C:\ XAMPP \第13行上的phpMyAdmin \ trabalho \ inserir \ inseriremailexcel.php 无效的文件:请上传CSV文件
请填写完整的错误吗? – eXplicit
它可能是'[“tmp_name”]'位导致问题? – Chrisky
@Chrisky,我试着删除它。它给出了同样的错误。我原本并没有使用它,但是我看到的大部分代码都包含了它,并且我得出结论,认为在稍后的时间里有必要为了在它之前拥有一些东西。不知道如果我解释自己正确 – Heatmanofurioso