Массив хранения PHP в отдельный столбец

В настоящее время у меня есть массив:

$movie_seat = "seat1, seat2, seat3, seat4";

foreach($movie_seat as $keys =>$values)
        {
        $movie_id = $values["movie_id"];
        $movie_seats = $values["movie_seats"];

            $query = "INSERT INTO `testing` (`movie_id`,`movie_seat`) VALUES ('$movie_id ','$movie_seats')" ;

            $addmoviequery = mysqli_query($conn,$query);
            if (!$addmoviequery){
                die("QUERY FAILED".mysqli_error($conn));

            }

из массива я получу следующий результат, сохраненный в базе данных. Он сохранит весь массив в столбце movie_seat.

+-----------------+-------------------------------+
| movie_id        | movie_seat                    |
+-----------------+-------------------------------+
| movie01         | seat1, seat2, seat3           |
| movie02         | seat5,seat6                   |
+-----------------+-------------------------------+

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

Результат, который я хочу:

 +-----------------+-------+-------+-------+-------+-------+-------+
 | movie_id        | seat1 | seat2 | seat3 | seat4 | seat5 | seat6 |
 +-----------------+-------+-------+-------+-------+-------+-------+
 | movie01         | booked|booked |booked |       |       |       |
 | movie02         |       |       |       |       |booked |booked |
 +-----------------+-------+-------+-------+-------+-------+-------+

Я попытался использовать функцию взорваться, но она покажет

Warning: Invalid argument supplied for foreach() in C:\

Во-первых, в foreach используйте $movie_seat, а не movie_seat.

ventaquil 18.04.2018 10:18

да .. я пропустил $ ..

new_learner 18.04.2018 10:35
Стоит ли изучать 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 и хотите разрабатывать...
2
2
47
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

В том, что вы делаете, есть несколько ошибок.

$movie_seat = "seat1, seat2, seat3, seat4"; 

Это не array. Это string.

Вам нужно explode в массив, например:

$seats = explode(",", $movie_seat);

Это создаст array строк с именем $seats, где $seats[0] равно "seat1" и т. д.

Затем вам нужно использовать foreach, используя новый массив, который вы создали, а не старую переменную. Как это:

foreach($seats as $key => $value)
{
    //Your code goes here, 
    //First iteration should give you $key = 0, $value = "seat1", etc...
}

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