тег выпадающего списка, постоянно повторяющий предыдущее значение строки в цикле for

0

Мне понадобится помощь по следующей проблеме:

Я пытаюсь показать значение qty из db через тег параметра, но тег опции продолжает добавлять значение предыдущей строки к следующему значению строки тега параметра. Поблагодарите любые советы/решения по этому поводу, спасибо.

$arrayqty = $_SESSION['pqty'];

<div id='qty'>

    <?php

    $options = array();
    $options[] = "<option value=''></option>";

    foreach($arrayqty as $qty )
    {        
        $sql = mysql_query ("SELECT * FROM products WHERE qty = '$qty'"); 

        $row = mysql_fetch_array($sql);

        $nqty = $row['qty']; 

        for($x=1; $x<=$nqty; $x++)
        {

            $options[] = "<option value='{$x}'>{$x}</option>";
        }
        ?>

        <select class="list" >
            <?php echo implode( $options); ?>
        </select>

        <?php
    }

    ?>

</div>

Изображение 174551

Теги:

2 ответа

0
Лучший ответ

В вашем foreach после echo implode( $options); использовать:

unset($options);

Или если вы хотите сохранить пустую опцию, попробуйте это

$options = array();
$options[] = "<option value=''></option>";
  • 0
    но тогда у него не будет пустой опции при последующем выборе
  • 0
    Я отредактировал свое решение, надеюсь, это поможет
Показать ещё 2 комментария
1

Попробуйте переместить массив $options внутри вашего цикла foreach.

foreach($arrayqty as $qty ) {        

    $options = array();
    $options[] = "<option value=''></option>";

Ещё вопросы

Сообщество Overcoder
Наверх
Меню