Как вставить значение массива в форму Implode в mysql

У меня есть значение в формате ниже, и я хочу преобразовать этот ключ и значение в форму взрыва, чтобы вставить значение в базу данных в mysql.

 Array
(
[users_ids] => 
[key_name] => Total_Cubic_Metres
[value_name] => 3.46m³
)

Array
(
[users_ids] => 
[key_name] => Bedroom_Bassinette
[value_name] => 2
)

Array
(
[users_ids] => 
[key_name] => Bedroom_Bedside_Drawers
[value_name] => 2
)

Array
(
[users_ids] => 
[key_name] => Bedroom_Bedside_Table
[value_name] => 2
)

У меня есть 2 COLUMN в «ключе» и «значении» MYSQL, и я сохраняю указанное выше значение в этом поле в форме взрыва, что-то вроде этого ключ: Всего_кубических_метров,Спальня_Колыбель,Спальня_Прикроватные_Ящики,Спальня_Прикроватные_Ящики,Спальня_Прикроватный_Таблица

Стоимость: 3,46 м³, 2, 2,2

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

Ответы 2

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

Вы можете использовать bindParam (PHP-документы) и писать свои запросы так:

$my_Insert_Statement = $my_Db_Connection->prepare("
INSERT INTO TABLE_NAME (
  Total_Cubic_Metres,
  Bedroom_Bassinette,
  Bedroom_Bedside_Drawers,
  Bedroom_Bedside_Drawers,
  Bedroom_Bedside_Table) 
VALUES (
 :Total_Cubic_Metres,  
 :Bedroom_Bassinette,
 :Bedroom_Bedside_Drawers,
 :Bedroom_Bedside_Drawers,
 :Bedroom_Bedside_Table
)");

и вы можете добавить их, например:

foreach($arr as $colData){
  $my_Insert_Statement->bindParam($colData['key_name'], $colData['value_name']);
}

и выполните подготовленный оператор:

if ($my_Insert_Statement->execute()) {
  echo "New record created successfully";
} else {
  echo "Unable to create record";
}

в форме есть так много значений, таких как "Bedroom_Bassinette", так как я могу определить это

Sheenu 14.03.2019 04:43

@Sheenu несколько вставок? Вы можете повторить этот код пару раз или создать функцию вставки нескольких строк для обработки нескольких строк, которые вы хотите вставить.

Miroslav Glamuzina 14.03.2019 04:51

У меня есть форма, в которой есть 150 полей, и я хочу вставить только то значение, которое имеет данные, и у меня есть это значение, которое имеет данные в формате выше массива, но я хочу сохранить эти данные в 1 строке, потому что в настоящее время они хранятся в нескольких ряд

Sheenu 14.03.2019 04:55

Вам нужно будет выбрать строку, которую вы хотите вставить, а затем построить и подготовить для нее запрос. Как вы определяете, какие строки вы хотите вставить? Возможно, вы ищете array_filter()(чтобы отфильтровать запись)?

Miroslav Glamuzina 14.03.2019 04:57

foreach($_POST as $key=>$value) { if ($key != 'отправить') { if ($value!='') { $info = array( 'key_name'=>mysql_real_escape_string($key), 'value_name'=>mysql_real_escape_string($value), );}}}

Sheenu 14.03.2019 05:01

из приведенного выше кода я нашел ключ и значение, у которых есть данные

Sheenu 14.03.2019 05:01

Тогда почему вы не можете вставить эту строку?

Miroslav Glamuzina 14.03.2019 05:03

он хранится в нескольких строках, но я хочу сохранить все значения в одной строке

Sheenu 14.03.2019 05:11

Взгляните на этот ответ здесь, это может быть то, что вы ищете stackoverflow.com/a/2098689/5066625. Если это так, дайте мне знать, и я отменю свой ответ здесь.

Miroslav Glamuzina 14.03.2019 05:16

Попробуйте код ниже

 function insertQuery($table, $dataArray, $connection){
    $dataArray = array_map(array($connection, 'real_escape_string'), $dataArray);
    $keys = array_keys($dataArray);
    $colmuns = implode(",",$keys);
    $values =array_values($dataArray);
    $valueData = implode("','",$values);
    $query = "INSERT INTO $table ($colmuns) VALUES ('$valueData')";
    $result = mysqli_query($connection, $query);

    if ($result){
      $id = mysqli_insert_id($connection);
      return $id;
    }
    return false;
 }

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