如何在php中的while循环中为单个变量添加值

时间:2016-01-11 15:53:41

标签: php mysql arrays session

我想将价格值添加到total_price并回复它。

我的代码从会话中获取值并进行mysql查询以从数据库表中获取信息。一旦我拥有它,它显示每行的价格。现在我正在添加总价格,但不是采用所有价格的值并添加它们,而是仅采用最后一行的值。我希望total_price添加所有价值$ price。 这是代码:

<?php 
if (empty($_SESSION['cart'])) { echo "Nothing here";} else {
$whereIn = implode(',', $_SESSION['cart']);

$list_query = mysqli_query($con,"SELECT * FROM packages WHERE id IN ($whereIn)"); 
while($run_list = mysqli_fetch_array($list_query)){
$id = $run_list['id'];
    $price = $run_list['package_price'];  
    $title = $run_list['package_title'];  


    $total_price = '';
$total_price += $price ;




echo '<p> Product :',$title,' | Price: ',$price; ?> <a href="add_to_cart/remove_from_cart.php?id=<?php echo $id; ?>">Remove item</a></p> 

<?php 

}?>  

<p> Total Price: <?php echo $total_price;?></p>

<p> <button> Checkout </button></p>

<?php } ?>

5 个答案:

答案 0 :(得分:3)

$total_price = '';放在while循环

答案 1 :(得分:3)

试试这样:

$total_price = 0;
while($run_list = mysqli_fetch_array($list_query)){
   $price = $run_list['package_price']; 
   $total_price += $price;
}

答案 2 :(得分:2)

$total_price += $price;

您每次重复时都会重置$total_price

答案 3 :(得分:1)

您的总价格变量将在每次迭代时重置。在循环外部初始化变量。

$total_price = 0;

while($run_list = mysqli_fetch_array($list_query)){
    $id = $run_list['id'];
    $price = $run_list['package_price'];  
    $title = $run_list['package_title'];  
    $total_price += $price ;

    ...
}

答案 4 :(得分:0)

$total_price ='';
while {
$total_price += $price
}

每次循环迭代时你的total_price eq价格