Новичок просит помощи здесь.Я создал многократную форму вставки, где есть 3 поля.Допустим, имена полей: «имя», «фамилия» и «возраст».Я пытаюсь вставить их в базу данных в случае, если в базе данных уже нет таких данных.Как я могу проверить, есть ли там уже данные?
Когда я пытаюсь вставить только одну запись в базу данных, довольно легко проверить, сохранена ли эта же запись уже в базе данных или нет.Проблема возникает, когда я пытаюсь вставить несколько записей в одну базу данных.В случае нескольких записей я должен использовать цикл foreach для успеха, но я не знаю, как это сделать.Заранее спасибо за любую помощь.
<?php
include('../mysqli_connect3.php');
include 'includes/header.html';
$page = 'quest_insert.php';
for($i = 0; $i < $_POST['numbers']; $i++) {
if (!empty($_POST["name"][$i]) && !empty($_POST["surname"][$i]) && !empty($_POST["age"][$i])) {
$sql = mysqli_query($dbc, "SELECT name, surname, age FROM users WHERE 'name' = '".$_POST['name'][$i]."' AND 'surname' = '".$_POST['surname'][$i]."' AND 'age' = '".$_POST['age'][$i]."'");
if (mysqli_num_rows($sql) > 0) {
echo "Data '" . $name[$i] . "' and '" . $surname[$i] ."' are already saved in database!";
mysqli_close($dbc);
header("refresh:5; url=$page");
} else {
$name[$i] = mysqli_escape_string($dbc, $_POST["name"][$i]);
$surname[$i] = mysqli_escape_string($dbc, $_POST["surname"][$i]);
$age[$i] = ($_POST["age"][$i]);
mysqli_query($dbc, "INSERT INTO users (name, surname, age) VALUES ('".$_POST['name'][$i]."', '".$_POST['surname'][$i]."','".$_POST['age'][$i]."')");
echo "Data '" . $name[$i] . "' and '" . $surname[$i] ."' are inserted into database! <br />";
header("refresh:6; url=$page");
}} else {
echo "You forgot to fill in all fields!";
header("refresh:2; url=$page");
exit();
}
}
?>