php – Sequenced array inside dropdown

Question:

Guys, I have a code that prints the arrays if I set the values, but I would like this sequence to be automatic. Let me show it to be clearer.

<?php

  $busca_produtos = new Produto;
  $produto = $busca_produtos->busca_todos_produtos();

  $busca_desc = new Produto;
  $desc_produto = $busca_produtos->busca_desc();

 ?>

In this code above it pulls the values ​​from the arrays just right; below, I print the values:

 <datalist class="" id="browsers" >
    <option value="<?php echo $produto[0]['cod_produto']; ?>"><?php echo $desc_produto[0]['desc_produto'] ;?></option>
    <option value="<?php echo $produto[1]['cod_produto']; ?>"><?php echo $desc_produto[1]['desc_produto'] ;?></option>
    <option value="<?php echo $produto[2]['cod_produto']; ?>"><?php echo $desc_produto[2]['desc_produto'] ;?></option>
    <option value="<?php echo $produto[3]['cod_produto']; ?>"><?php echo $desc_produto[3]['desc_produto'] ;?></option>   
 </datalist>

As you can see, I had to value the array. The problem is that if I put, for example, $product[5345]['product_code'], an error will obviously appear, because line 5345 does not exist in the database.

My question is: is there any way I can pull ALL the values ​​from the bank and print there in the options separately without having to specify the line it is on? As if each array value was a datalist option?

Answer:

Using a foreach and a $i counter

<datalist class="" id="browsers" >
    <?php 
       $i = 0;   // declaração do contador
       foreach($produto as $p){
    ?>
          <option value="<?php echo $p['cod_produto']; ?>"><?php echo $desc_produto[$i]['desc_produto'] ;?></option>
    <?php
          $i++; // incremento do contador
       }        // fim do foreach
    ?>
</datalist>
Scroll to Top