Show all products in an order Mysql

1

Good morning! Home I created an online store , this is a shopping cart. After the user chooses all the products, a page "payment.php" will appear, before that he inserts in the database the order , and all the products associated with such order, for example: Home This is the order 1


Andinthisorderwereinsertedtheseproducts


Sofarsogood!HomeWhatIintendisthatonthenextpage(payment.php)showtheoutputasfollows:

  

Productinformationpurchased
(id27)
  Name:NarsContourBlush
  ProductPrice:39.95€  Quantity:2

    

(id87)
  Name:Clarins
  Price:€19.95
  Quantity:1


ButthewayIdiditfirstshowsallthenames,thenthepricesandso,...Hereisapartofmycodetofetchanddisplayinformation

$procura=("SELECT encomenda.* , prod_encomenda.* , produtos.*
    from encomenda 
    join prod_encomenda on prod_encomenda.id_encomenda=encomenda.id_encomenda
    join produtos on produtos.id_produto = prod_encomenda.id_produto
    where encomenda.id_encomenda=(
    SELECT max(encomenda.id_encomenda) from encomenda)");


    $resultado = mysqli_query($link,$procura) or die(mysqli_error($link));
    while ($linha = mysqli_fetch_array($resultado)) 
    {
        $nome_produtoarray[] = $linha['nome_produto'];
        $preco_produtoarray[] = $linha['preco_produto'];
        $preco_total_produto = $linha['preco_total'];
        $quantidadearray[] = $linha['quantidade'];
    }

foreach ($nome_produtoarray as $produto) {
        echo "Nome do produto: ".$produto."<br>"; 
    }

    echo "<br><p style='background:black; color:white; padding:6px;'>Preço dos produtos comprados:</p>";

    foreach ($preco_produtoarray as $preco) {
        echo "Preço do produto: ".$preco."€<br>"; 
    }

    echo "<br><p style='background:black; color:white; padding:6px;'>Quantidade de cada produto:</p>";

    foreach ($quantidadearray as $quantidade) 
    {
        echo "Quantidade: ".$quantidade."<br>"; 
    }


Thanks for helping!

    
asked by anonymous 28.06.2018 / 12:41

1 answer

4

You can do everything within just foreach . Just grab the indexes of the other arrays using => :

foreach ($nome_produtoarray as $i => $produto) {
                               ↑        ↑
                             índice   valor

Then it would look like:

foreach ($nome_produtoarray as $i => $produto) {
   echo "Nome do produto: ".$produto."<br>";
   echo "Preço do produto: ".$preco_produtoarray[$i]."€<br>";
   echo "Quantidade: ".$quantidadearray[$i]."<br>"; 
}
    
28.06.2018 / 13:01