请告诉我有一个代码:
<?php
$host = 'localhost';
$db = '*';
$user = '*';
$pass = '*';
$charset = 'utf8';
$dsn = "mysql:host=$host;dbname=$db;charset=$charset";
$opt = [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_EMULATE_PREPARES => false,
];
$pdo = new PDO($dsn, $user, $pass, $opt);
$stmt = $pdo->query("SELECT * FROM order_products WHERE id_order=1");
while ($row = $stmt->fetch()) {
$summ = $row['price'] * $row['amount'];
echo "
<tr>
<td><img src='".$row['image']."' style='width:50px;border:2px solid #edc951;border-radius:5px;'></td>
<td>".$row['name']."</td>
<td>".$row['price']."</td>
<td><input type='text' value='".$row['amount']."' style='width:75px;'></td>
<td>".$summ."</td>
<td><input type='text' value='' style='width:75px;'></td>
<td><form action='/fun/deleteorder_products.php' method='post' style='display:inline-block;'>
<a href='javascript:;' onclick='parentNode.submit();' style='text-decoration:none;color:#000;'><i class='far fa-trash-alt'></i>
<input type='hidden' name='id' value='".$row['id']."'>
</a></form></td>
</tr>";
}
?>
有一个$summ
变量来计算数量(数量*价格)。如何计算所有产品的总和?谢谢。
答案 0 :(得分:1)
使用另一个变量来跟踪运行总和。
$total = 0:
while ($row2 = $stmt2->fetch()) {
$summ = $row2['price'] * $row['amount'];
$total += $summ;
...
}
获取所有行后,变量total
将包含所有乘积之和。
答案 1 :(得分:0)
您可以将公式放在SUM函数中
SELECT SUM(amount * price) AS total
然后,您只需拨打电话:
$row2['total']