Скажем, у меня есть 3 строки в CSV файле с 3-мя столбцами. В этом случае мне нужно импортировать тот же самый файл в 3 раза, чтобы все мои данные в CSV файле были полностью вставлены в мою базу данных SQL. Я думал, что !feof($file)
должен убедиться, что цикл завершен в конец файла?
if (isset($_POST['submitI'])){
$filename = $_FILES["file"]["tmp_name"];
if ($_FILES["file"]["size"] > 0){
$file = fopen($filename, "r");
while (!feof($file)){
$getData = fgetcsv($file, '0');
$sql = "SELECT * FROM murid WHERE No_Sek_Murid = '".$getData[0]."'";
$result = mysqli_query($conn, $sql);
if(empty($getData[0] || $getData[1] || $getData[2])){
$errorForm = "Sila isikan semua medan dalam fail!";
echo "<script type='text/javascript'>alert('$errorForm');</script>";
echo "<script> location.href='../main.php'; </script>";
exit();
}
if(mysqli_num_rows($result) === 0){
$sqlMurid = "INSERT INTO murid (No_Sek_Murid, Nama_Murid, Kelas_Murid) VALUES ('".$getData[0]."', '".$getData[1]."', '".$getData[2]."')";
$sqlKelab = "INSERT INTO kelab (Kod_Kelab, No_Sek_Murid, ID_Pengguna) VALUES ('{$_SESSION['kodKelab']}', '".$getData[0]."', '{$_SESSION['username']}')";
mysqli_query($conn, $sqlMurid);
mysqli_query($conn, $sqlKelab);
$success = "Berjaya menambah rekod ke dalam pangkalan data!";
echo "<script type='text/javascript'>alert('$success');</script>";
echo "<script> location.href='../main.php'; </script>";
exit();
}
} fclose($file);
} else {
$errorfile = "Operasi import gagal!";
echo "<script type='text/javascript'>alert('$errorfile');</script>";
echo "<script> location.href='../main.php'; </script>";
exit();
}
}
Не используйте exit() без необходимости. Также вы передали несколько параметров функции empty(), которая кажется неправильной. Вы можете запустить свой код без функции выхода, как показано ниже:
if (isset($_POST['submitI'])){
$filename = $_FILES["file"]["tmp_name"];
if ($_FILES["file"]["size"] > 0){
$file = fopen($filename, "r");
while (!feof($file)){
$getData = fgetcsv($file, '0');
$sql = "SELECT * FROM murid WHERE No_Sek_Murid = '".$getData[0]."'";
$result = mysqli_query($conn, $sql);
if(empty($getData[0]) || empty($getData[1]) || empty($getData[2])){
$errorForm = "Sila isikan semua medan dalam fail!";
echo "<script type='text/javascript'>alert('$errorForm');</script>";
echo "<script> location.href='../main.php'; </script>";
} elseif(mysqli_num_rows($result) === 0){
$sqlMurid = "INSERT INTO murid (No_Sek_Murid, Nama_Murid, Kelas_Murid) VALUES ('".$getData[0]."', '".$getData[1]."', '".$getData[2]."')";
$sqlKelab = "INSERT INTO kelab (Kod_Kelab, No_Sek_Murid, ID_Pengguna) VALUES ('{$_SESSION['kodKelab']}', '".$getData[0]."', '{$_SESSION['username']}')";
mysqli_query($conn, $sqlMurid);
mysqli_query($conn, $sqlKelab);
$success = "Berjaya menambah rekod ke dalam pangkalan data!";
echo "<script type='text/javascript'>alert('$success');</script>";
echo "<script> location.href='../main.php'; </script>";
}
} fclose($file);
} else {
$errorfile = "Operasi import gagal!";
echo "<script type='text/javascript'>alert('$errorfile');</script>";
echo "<script> location.href='../main.php'; </script>";
}
while
).