Запись несколько групп строк базу данных

Есть вот такой код

<form action="dob_tool.php" method="post" id="submit1">
    <div class="row">
        <div class="col-md-6">
            <div class="card">
                <div class="card-body">
                    <div class="form-group">
                        <table class="table">
                            <tr>
                                <th> Артикул</th><th> Наименование</th><th> Группа товара</th><th> Ед. измерения</th></tr>
                            <tr>
                                <div class="input_block">
                                <th><input type="text" name="code[1]" value="" class="form-control" placeholder="Артикул"></th>
                                <th><input type="text" name="name[1]" value="" class="form-control" placeholder="Наименование"></th>
                                <th><input type="text" name="groups[1]" value="" class="form-control" placeholder="Группа товара"></th>
                                <th><input type="text" name="unit[1]" value="" class="form-control" placeholder="Ед. измерения"></th></tr>
                                </div>
                            <tr>
                                <div class="input_block">
                                <th><input type="text" name="code[2]" value="" class="form-control" placeholder="Артикул"></th>
                                <th><input type="text" name="name[2]" value="" class="form-control" placeholder="Наименование"></th>
                                <th><input type="text" name="groups[2]" value="" class="form-control" placeholder="Группа товара"></th>
                                <th><input type="text" name="unit[2]" value="" class="form-control" placeholder="Ед. измерения"></th></tr>
                                </div>
                        </table>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="row">
        <div class="col-md-6">
            <div class="form-group">
                <input class="form-control" type="hidden" name="date" value="2019-12-11">
                <button type="submit"  class="btn btn-google btn-lg btn-block" >Добавить</button>
            </div>
        </div>
    </div>
</form>

Здесь я попробовал сделать несколько групп строк введения данных Потом они отправляются в

if (isset($_POST['code1'])){ //Определяет существует ли Card_id, а так как мы отправили из ADD.php то card_id существует

    foreach($_POST['code1']

    $code = trim ( $_POST['code']);
    $name = trim($_POST['name']);
    $groups = trim ( $_POST['groups']);
    $unit = trim($_POST['unit']);
    $code = trim ( $_POST['code']);
    $name = trim($_POST['name']);
    $groups = trim ( $_POST['groups']);
    $unit = trim($_POST['unit']);// Убрали со всех вводимых данных пробелы и ковычки для безопасности

    $arr['code'] = $code;
    $arr['name'] = $name;
    $arr['groups'] = $groups;
    $arr['unit']= $unit;
    //собрали для удобства в массив

    $new_tool = insert_tool($arr);
    if ($new_tool['success'])
    {
        $header = 'Location:/bootstrap/1c.php?success='.$new_tool['success'];//?(вопросительный знак стоит перед GET параметром) общий смысл что мы заполняем переменную header, данными клиента с определенным card_id
    }
    else
    {
        $header = 'Location:/bootstrap/1c.php?success='.$new_tool['success']."&description=".$new_tool['description'];
    }


    header($header); //переадресация в другой файл сразу с GET-запросом для поиска по номеру карты
    exit;

}

?>

Здесь не знаю, как оформить цикл проверки данных на иньекции и отправки в функцию


function insert_tool ($arr)
{
    global $link;
    $return['success'] = false;//по умолчанию не удлаось
    $return['description'] = "";
    $code = mysqli_real_escape_string($link, $arr['code']); //безопасность "."DELETE ALL
    $groups = mysqli_real_escape_string($link, $arr['groups']); //безопасность
    $name = mysqli_real_escape_string($link, $arr['name']); //безопасность
    $unit = mysqli_real_escape_string($link, $arr['unit']); //безопасность

    $query = "SELECT * FROM tool WHERE code='$code' OR name='$name'"; //surname LIKE '%ова%'

    $result = mysqli_query($link, $query); //link задать

    if (mysqli_num_rows($result) < 1)
    {
        $insert_query = "INSERT INTO tool (code, groups, name, unit, date ) VALUES ('$code','$groups','$name','$unit',NOW())";
        $result_insert = mysqli_query($link, $insert_query);// получаем результат запроса и вставки

        if ($result_insert)
        {
            $return['success'] = true; //а теперь оказывается что удалось
            $return['id'] = mysqli_insert_id($link);//Это зачем ??, вроде понял что делает, но зачем. вдруг понадобится, а у нас это уже есть.
            $return['code'] = $code;
            // return $return;
        }
        else
        {
            //$return['success'] = false; //закомментировали, потому что это прикольно
            $return['description'] = "Не удалось вставить строку в БД! Строк в БД: ".mysqli_num_rows($result);//Что заставляет его вывестись на экран. ничего не заставляет, этот текст просто сохраняется в $return, и уже после выполнения фукнции ВОЗМОЖНО будет вывод на экран
            $return['rows'] = mysqli_num_rows($result);
            //   return $return;
        }

    }
    else
    {
        //$return['success'] = false;
        $return['description'] = "У нас уже есть инструмент с таким артикулом либо названием";// вставить номер клиента и перенаправить на его страницу
        // return $return;
    }

    return $return;//ВЕРНУТЬ переменную $return (туда, где эту фукнцию вызвали)
}

Все выше приведенное работает для одной группы данных вводимых в таблицу БД. Подскажите как оформить, чтобы можно было сразу 10-100 групп данных заносить в БД


Ответы (0 шт):