Mysqli множественная вставка не отправляет все строки из массива

Я подозреваю, что у меня большая проблема с кодом. Он добавляет только первые из $species, $weight и $length. но если в $ _Post больше одного значения. Он также должен отправить их из моей формы. Мне трудно понять, в чем я ошибся. Надеюсь, кто-нибудь может указать мне правильное направление?

<?php

require 'config.php';

$teamid = $_POST['teamid'];
$species = $_POST['species']; // Can be multiple values depending on how many lines added from form
$weight = $_POST['weight']; // Can be multiple values depending on how many lines added from form
$length = $_POST['length']; // Can be multiple values depending on how many lines added from form

// count($species),($weight),($length) - Should always be the same length

// Processing form data when form is submitted
if ($_SERVER["REQUEST_METHOD"] == "POST"){

        // Prepare an insert statement
        $sql = "INSERT INTO indvejninger ( teamid, artid, vaegt, laengde) VALUES (?, ?, ?, ?)";

        if ($stmt = $mysqli->prepare($sql)){

            foreach ($species as $key => $value) {

            // Bind variables to the prepared statement as parameters
            $stmt->bind_param("ssss", $_POST['teamid'], $param_species, $param_weight, $param_length);

            $param_species = $species[$key];
            $param_weight = $weight[$key];
            $param_length = $length[$key];

            // Attempt to execute the prepared statement
            if ($stmt->execute()){
                // Records created successfully. Redirect to landing page
                header("location: index.php?limit = ");
                exit();
            } else{
                echo "Something went wrong. Please try again later.";
            }
        }       

        // Close statement
        $stmt->close();

        }

    // Close connection
    $mysqli->close();
}
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
0
15
1

Ответы 1

Я обнаружил ошибку, после первой отправки изменил URL-адрес. Таким образом, это не заканчивает другие представления.

        // Attempt to execute the prepared statement
        if ($stmt->execute()){
            // Records created successfully. Redirect to landing page
            header("location: index.php?limit = ");
            exit();
        } else{
            echo "Something went wrong. Please try again later.";
        }

Так что вместо этого мне нужно закончить другие отправки, а затем перенаправить на целевую страницу.

Другие вопросы по теме