在尝试计算如何获得我循环的项目总数时遇到问题

时间:2017-09-19 22:49:28

标签: php mysql mysqli

我无法想象如何获得我正在循环的项目的总数,这样我只是向我显示3个项目的价格为6 56 6。我需要它来向我展示所有三个项目的总数,所以在这个例子中它应该显示我总共68个任何帮助将被理解如何做到这一点。

<div class="panel panel-default">
                <div class="panel-heading"><h2>Hello <?php echo $_SESSION['uname']; ?> Thank you!</h2></div>
                <div class="panel-body">
                    <h3>Your order was successfully sent. Your Transaction ID number is <b><?php echo $tr_id; ?></b> </h3>

    <p>
        <table class="table table-hovered">
    <tr>
        <th>Product Name</th>
        <th>Quantity</th>
        <th>Price</th>
    </tr>               
<?php
    $sql="SELECT * FROM customer_order WHERE uid='$uid' and tr_id='$tr_id'  order by id desc";
    $run_query=mysqli_query($conn,$sql);

        while ($row = mysqli_fetch_array($run_query))
    {


                   echo "\t<tr><td>".$row['p_name']."</td><td>".$row['p_qty']."</td><td>".$row['p_price']."</td></tr>\n";

                  echo $row['p_qty'] * $row['p_price'] ;
    }

    ?>
    </table>

  </p>
                    <a href="profile.php" class='btn btn-success btn-lg'>Back to Supplies</a>
                </div>
            </div>

2 个答案:

答案 0 :(得分:1)

在这种情况下,只需添加一个变量$total。保持它的起始值为零。每隔一段时间,只需添加每种产品的价格。希望这对你有用。

$total = 0;
    while ($row = mysqli_fetch_array($run_query))
    {
            echo "\t<tr><td>".$row['p_name']."</td><td>".$row['p_qty']."</td><td>".$row['p_price']."</td></tr>\n";
            echo $row['p_qty'] * $row['p_price'] ;
            $total = $total + $row['p_qty'] * $row['p_price'];
    }
    echo "Total Price = ".$total;

答案 1 :(得分:0)

在计算值的位置,使用floatval和round包装值。请注意,如果您的数字值包含格式化字符,则需要先删除它们。

e.g。 echo round(floatval($ row [])* floatval($ row []),2);