Нужна помощь со вставкой данных из html таблицы в mysql

Рейтинг: 0Ответов: 1Опубликовано: 07.06.2023

введите сюда описание изображения

Создал корзину для сайта, по логике все названия товаров из которой должны вставляться в базу данных mysql(в один столбец через запятую), но вставляется только последняя строчка.

То есть проблема не в том, что в базу данных вообще ничего не идёт, а в том что в нее записывается только последняя строчка из корзины(в конкретном случае торт "изумительный пломбир").

Вот мой код:

<?php

    session_start();
    require_once 'connect.php';

    $user_name = $_SESSION['user']['full_name'];
    $title = $_POST['title'];
    $equal = $_POST['equal'];
    $totalprice = $_POST['totalprice'];
    $tel = $_POST['tel'];
    $adress = $_POST['adress'];

    mysqli_query($connect, "INSERT INTO `orders` (`id`, `user_name`, `title`, `equal`, `total_price`, `tel`, `adress`, `status`) VALUES (NULL, '$user_name', '$title', '$equal', '$totalprice', '$tel', '$adress', 'Ожидается подтверждение')");

    header('Location: ../profile.php');

?>

Ответы

▲ 0
<?php

session_start();
require_once 'connect.php';

$user_name = $_SESSION['user']['full_name'];
$tel = $_POST['tel'];
$adress = $_POST['adress'];

// Получаем массив с товарами из сессии
$cart = $_SESSION['cart'];

// Перебираем каждый товар в корзине и вставляем его в базу данных
foreach ($cart as $item) {
    $title = $item['title'];
    $equal = $item['equal'];
    $totalprice = $item['totalprice'];

    mysqli_query($connect, "INSERT INTO `orders` (`id`, `user_name`, `title`, `equal`, `total_price`, `tel`, `adress`, `status`) VALUES (NULL, '$user_name', '$title', '$equal', '$totalprice', '$tel', '$adress', 'Ожидается подтверждение')");
}

// Очищаем корзину
$_SESSION['cart'] = array();

header('Location: ../profile.php');
?>