dqajyxqem115006813 2016-01-16 18:37
浏览 47
已采纳

下拉菜单中的动态值计数

I am trying to create a dropdown select menu as followed:

I have a table of products and each have a stock column. Let's say a product has a stock of 54. I want the dropdown to start at option 1 all the way to option 54.

Right now I have this:

<?php
## Conection part 

$sql = "SELECT * FROM product";
$result = $conn->query($sql);

while ( $row = mysqli_fetch_assoc($result) ) {   ## 1 While loop 

?>
    <tr>
        <td><input type="checkbox" name="id[]" value="<?= $row['ProductID'] ?>" /></td> 
        <td><?php echo $row['ProductID']; ?></td>
        <td><?php echo utf8_encode($row['ProductName']); ?></td>
        <td><?php echo $row['SKU']; ?></td>
        <select>
          <option value="1">1</option>
        </select>
    </tr>
<?php  
  }
$conn->close();
echo "<br>";
?>

Anyone have any idea how to accomplish this?

Thanks guys!

  • 写回答

2条回答 默认 最新

  • douzhi1972 2016-01-16 18:55
    关注

    This is done using a simple for() loop, where you change the max in for($i=min;$i<=max;$i++) to your max, ie. $row['stock'].

    <select>
      <?php for($i=1;$i<=$row['stock'];$i++){ ?>
        <option value="<?php echo $i; ?>"><?php echo $i; ?></option>
      <?php } ?>
    </select>
    

    also, if you want to account for when $row['stock'] is 0, you could show an out of stock message -

    <?php if($row['stock'] > 0){ ?>
    <select>
      <?php for($i=1;$i<=$row['stock'];$i++){ ?>
        <option value="<?php echo $i; ?>"><?php echo $i; ?></option>
      <?php } ?>
    </select>
    <?php } else { ?>
    out of stock
    <?php } ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器