如何在php中向while循环中的单个变量添加值
我想将价格值添加到总价中,并对其进行响应 我的代码从会话中获取值,并进行mysql查询以从数据库表中获取信息。一旦我有了它,它会显示每行的价格。现在我要添加一个总价,但它不是获取所有价格的值,而是只获取最后一行的值。我希望总价格加上$price的所有值。 代码如下:如何在php中向while循环中的单个变量添加值,php,mysql,arrays,session,Php,Mysql,Arrays,Session,我想将价格值添加到总价中,并对其进行响应 我的代码从会话中获取值,并进行mysql查询以从数据库表中获取信息。一旦我有了它,它会显示每行的价格。现在我要添加一个总价,但它不是获取所有价格的值,而是只获取最后一行的值。我希望总价格加上$price的所有值。 代码如下: <?php if (empty($_SESSION['cart'])) { echo "Nothing here";} else { $whereIn = implode(',', $_SESSION['cart']);
<?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 } ?>
总价:
结帐
Put$total\u price=''代码>超时循环
$total_price += $price;
每次迭代时,您当前正在重置$total_price
您的总价变量在每次迭代中都会被重置。在循环外部初始化变量
$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 ;
...
}
试着这样做:
$total_price = 0;
while($run_list = mysqli_fetch_array($list_query)){
$price = $run_list['package_price'];
$total_price += $price;
}
每次循环迭代时,您的总价均价Move$total\u price=''代码>循环外。。。或者做$price[]=$run\u list['package\u price']代码>然后使用。此外,您当前的方法可能对SQL注入开放..多亏了大家。你的答案都是对的。经过几天的编码,也许我的大脑已经精疲力竭了。我不知道我怎么会错过这个新手的事情您应该研究使用准备好的语句和参数化查询。如果remove\u from\u cart.php
SQL的行为与此类似,您将遇到问题。不,它在remove\u from\u cart.php中没有任何SQL语句,我只有从会话中删除数组值的代码。是的,您完全正确:)我怎么没有错过它?谢谢
$total_price ='';
while {
$total_price += $price
}