在php中尝试导入csv文件时未定义的变量数据
我正在尝试使用PHP在我的SQL数据库中导入CSV文件 我有这个密码在php中尝试导入csv文件时未定义的变量数据,php,sql,Php,Sql,我正在尝试使用PHP在我的SQL数据库中导入CSV文件 我有这个密码 <?php echo $_FILES['userfile']['name']; echo $_FILES['userfile']['size']; include ("AccesoBD.php"); if ($_FILES['userfile']['size'] > 0) { echo "El archivo contiene informacion";
<?php
echo $_FILES['userfile']['name'];
echo $_FILES['userfile']['size'];
include ("AccesoBD.php");
if ($_FILES['userfile']['size'] > 0) {
echo "El archivo contiene informacion";
$file = $_FILES['userfile']['tmp_name'];
$handle = fopen($file,"r");
$data2 = fgetcsv($handle,1000,",","'");
do {
if ($data[0]) {
echo "Entramos en el Import";
mysql_query("INSERT INTO Alumno (Nombre, Apellidos, CorreoElectronico) VALUES
(
'".addslashes($data[0])."',
'".addslashes($data[1])."',
'".addslashes($data[2])."'
)
");
}
} while ($data = fgetcsv($handle,1000,",","'"));
}
?>
抱歉,如果我的英语不好,这是我第一次尝试用这种语言提出正式问题:)您定义了$data2,然后使用了未定义的$data
$data2 = fgetcsv($handle,1000,",","'");
do {
if ($data[0]) {
您尚未定义$data try
$data2 = fgetcsv($handle,1000,",","'");
do {
if ($data2[0]) {
echo "Entramos en el Import";
mysql_query("INSERT INTO Alumno (Nombre, Apellidos, CorreoElectronico) VALUES
(
'".addslashes($data2[0])."',
'".addslashes($data2[1])."',
'".addslashes($data2[2])."'
)
");
}
} while ($data2);
do。。while
首先执行do
块的内容,然后执行while
表达式。在第一次运行时,$data
不存在,因为它仅在第一次执行后在while
表达式中设置。实际上,您需要一个常规的,而:
while ($data = fgetcsv($handle,1000,",","'")) {
...
}
请突出显示您的代码User3462511,我该如何做?数据是在do结束时定义的,而我只定义了数据2以使其他尝试失败。如果您以前的条件正常($data2=fgetcsv($handle,1000,“,”,“”))是的,我可以在do结束前解决该定义问题。此外,我在SQL查询中发现了问题,我在INSERT块的末尾添加了mysql_error(),我发现我没有正确插入。您需要选择一个有用的答案,以便OP可以使用。是的,我可以在执行之前解决这个问题。此外,我在SQL查询中发现了问题,我在INSERT块的末尾添加了mysql_error(),我发现我没有正确插入。
while ($data = fgetcsv($handle,1000,",","'")) {
...
}