Как сохранить строки выбранных продуктов и их кол-во в БД MySQL? - PullRequest
0 голосов
/ 24 мая 2019

У меня есть HTML-таблица со строками продуктов. Пользователь может поставить галочку, чтобы выбрать продукт из списка и ввести его количество. Пользователь может выбрать строку 1 и ввести ее кол-во, строку 3 и ввести ее кол-во или строку 6 и ввести ее кол-во. Я могу сохранить идентификатор продукта, но не могу сохранить количество, введенное пользователем. Как я могу сохранить выбранные строки продуктов и их количество в БД MySQL?

Вот как я перечисляю продукты и их поле ввода:

while($iGroups < count($listeProduct))
{
 ?> 
 <tr>
 <td>
 <input type="checkbox" name="productSelect[]" id="productSelect_<?php echo $listeDoc[$iGroups]->PRODUCT_ID ?>" value="" <?php echo $checkedProduct; ?> ><?php echo $listeDoc[$iGroups]->PRODUCT_NAME; ?>
</td>
<td>
<input type="text" name="productQty[]" id="productQty_<?php echo $listeDoc[$iGroups]->PRODUCT_ID ?>" size="45" maxlength="100" class="form-control1" value="" />
</td>
</tr>
<?php
 $iGroups++;
}
?>

В контроллере я так и поступаю с $ _POST после отправки. Как получить количество, введенное пользователем в поле ввода? :

$producySelected = $_POST['docSelect'];
$productQty = $_POST['comboNumDoc'];

$icount = 0;
while($icount < count($producySelected))
{
    $PRODUCT_ID = $productSelected[$icount]->product_id;
    $QTY = ??

    $icount ++; 
}

Спасибо за вашу помощь.

1 Ответ

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

Вы можете добавить productId к имени поля ввода, а затем получить базовое значение product_id, как показано ниже.

while($iGroups < count($listeProduct))
    {
     ?> 
     <tr>
     <td>
     <input type="checkbox" name="productSelect[<?php echo $listeDoc[$iGroups]->PRODUCT_ID ?>]['product_id']" id="productSelect_<?php echo $listeDoc[$iGroups]->PRODUCT_ID ?>" value="" <?php echo $checkedProduct; ?> ><?php echo $listeDoc[$iGroups]->PRODUCT_NAME; ?>
    </td>
    <td>
    <input type="text" name="productSelect[<?php echo $listeDoc[$iGroups]->PRODUCT_ID ?>]['quantity']" id="productQty_<?php echo $listeDoc[$iGroups]->PRODUCT_ID ?>" size="45" maxlength="100" class="form-control1" value="" />
    </td>
    </tr>
    <?php
     $iGroups++;
    }
    ?>

В вашем контроллере вы получаете значение, подобное этому.

    $producySelected = $_POST['productSelect']; 
  if(!empty($producySelected){

    foreach($producySelected as $key=>$selected){
    {
        $PRODUCT_ID = $selected['product_id'];
        $QTY = $selected['quantity'];

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