Выпадающий список в корзине покупок, позволяющий мне изменять количество товаров до пяти, даже если пять товаров недоступны

#php #html #mysql

#php #HTML #mysql

Вопрос:

Я кодирую интернет-магазин (не настоящий). Я могу без проблем добавить в корзину и изменить количество товаров. Однако при добавлении в корзину, если доступно менее пяти товаров, это не дает мне возможности добавить больше, чем доступно. Однако с тем же циклом for при изменении количества товаров в корзине это позволяет мне добавлять до пяти каждого товара, даже если доступно менее пяти. Что мне нужно сделать по-другому.

 <form method="post" action="basket.php?action=updateamp;productNumber=<?php echo $value["productNumber"]; ?>">    
    <input type="hidden" name="hidden_name" value="<?php echo $value["item_name"]; ?>">
    <input type="hidden" name="hidden_brief_info" value="<?php echo $value["brief_item_info"]; ?>">
    <input type="hidden" name="hidden_price" value="<?php echo $value["product_price"]; ?>">
    <?php echo $value["item_quantity"]; ?>
    <select class="ml-2 pt-2 pb-2" name="quantity_wanted" class="form-control">
          <?php
              if ($value["item_quantity"] >= 5) {
                  for ($i = 1; $i <= $value["item_quantity"] - $value["item_quantity"]   5; $i  ) {
         ?>
         <option value="<?php echo $i; ?>"><?php echo $i; ?></option>
         <?php
                 }
              } else {
                 for ($i = 1; $i <= $value["item_quantity"]; $i  ) {
         ?> <option value="<?php echo $i; ?>"><?php echo $i; ?></option>    
         <?php
             }
             }
         ?>
      </select>
   <input type="submit" name="update" class="btn btn-primary btn-block mt-4" value="Update">
</form>    
  

Комментарии:

1. Вы серьезно относитесь к таким вещам, как $i <= $value["item_quantity"] - $value["item_quantity"] 5 ? Вы знаете, что x - x 5 это просто 5 , верно?

2. Кроме того, я не совсем понимаю описание вашей проблемы. Похоже, вы бы добавили опции от 1 до 5, если бы все еще было доступно более 5, и только от 1 до скольких доступно, когда это число <5. Итак, в чем именно проблема сейчас? Не работают ли эти циклы / условия и параметры вывода weong или что?

3. проверьте скобки. у вас есть один, если у другого не должно быть более 4 скобок, у вас есть 6

4. Например, если доступно только два товара, внутри корзины покупок это позволяет мне изменять количество до двух. Но за пределами корзины он работает нормально

5. Удалось устранить проблему. В основном на другой странице, где я создал массивы для добавления в корзину и обновления корзины. Мне пришлось объявить дополнительную переменную, чтобы база данных могла получить общее количество товаров и цикл for мог выполняться должным образом. Но да, было странно, как один и тот же цикл for отлично работал при добавлении товара в корзину, но теперь я знаю.