Как объединить два входа в массив php - PullRequest
0 голосов
/ 24 мая 2018

У меня есть таблица css из нескольких продуктов с одинаковым именем ввода количества и именем ввода идентификатора продукта.Каждый идентификатор и количество будут разными значениями

Они выглядят так

<input type="number" name="quantity" value="0">
<input type="hidden" name="prod_id" value="<?php echo $product_id; ?>">

У меня вопрос: как вставить оба значения в массив / строку, выглядящую так * 1006?*

 $product_ids = '150:2,152:4';

Идентификатор продукта, а затем количество после:

1 Ответ

0 голосов
/ 24 мая 2018

Как сказано в комментариях @UlyssesMarx, вы должны изменить структуру полей ввода HTML, чтобы поддерживать ввод нескольких количеств.

<input type="number" name="quantity[<?php echo $product_id; ?>]" value="0">

В этом случае вам не нужно скрытое поле ввода для вашегоИдентификатор продукта, как он будет храниться в имени для поля количества.

На сервере вы можете проанализировать эти данные с помощью PHP.

$quantities = $_POST['quantity']; //make sure to sanitize and validate!

foreach( $quantities as $product_id => $qty ) {
   //do whatever you would like with this data
}

Если вы все еще хотите получить данные в указанной вами строке, один из подходов будет:

$quantities = $_POST['quantity']; //make sure to sanitize and validate!
$data = []; //empty array to hold restructured data

foreach( $quantities as $product_id => $qty ) {
    $data[] = $product_id . ":" . $qty;
}

//now combine the array
$string = implode( ',', $data );

echo $string;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...