0

所以我有一个表格,显示来自我的数据库的数据,我想添加一个总计字段,无论如何我将如何获得金额和价格相乘然后显示到新的总计字段中?

到目前为止,这是我的代码

<?php
// Connection data (server_address, database, name, poassword)
$hostdb = 'localhost';
$namedb = 'xxxx';
$userdb = 'xxxx';
$passdb = '';

try {
// Connect and create the PDO object
$conn = new PDO("mysql:host=$hostdb; dbname=$namedb", $userdb, $passdb);
$conn->exec("SET CHARACTER SET utf8");      // Sets encoding UTF-8

// Define and perform the SQL query
$sql = "SELECT `id`, `wine`, `amount`, `price`, `upc` FROM `wine`";
$result = $conn->query($sql);

// If the SQL query is succesfully performed ($result not false)
if($result !== false) {
// Create the beginning of HTML table, and the first row with colums title
$html_table = '<table border="1" cellspacing="0" cellpadding="2"><tr><th>ID</th>      <th>Wine</th><th>Amount</th><th>Price</th><th>upc</th></tr>';

// Parse the result set, and adds each row and colums in HTML table
foreach($result as $row) {
  $html_table .= '<tr><td align="center">' .$row['id']. '</td><td align="center">' .$row['wine']. '</td><td align="center">' .$row['amount']. '</td><td align="center">' .$row['price']. '</td><td align="center">' .$row['upc']. '</td></tr>';
 }
}

 $conn = null;        // Disconnect

 $html_table .= '</table>';           // ends the HTML table

 echo $html_table;        // display the HTML table
}
catch(PDOException $e) {
echo $e->getMessage();
}
?>
<a href="/admin/">Admin</a> 
4

4 回答 4

0
    You could easily retrieve the total by calculating it in the query itself.

    change your sql to:
    SELECT id, wine, amount, price, upc, (amount*price) as total FROM wine;

    display it like this:

    $html_table .= '<tr><td align="center">' .$row['id']. '</td><td align="center">' .$row['wine']. '</td><td align="center">' .$row['amount']. '</td><td align="center">' .$row['price']. '</td><td align="center">' .$row['upc']. '</td>
<td align="center">' .$row['total']. '</td></tr>';
于 2014-03-11T18:06:47.073 回答
0

有时显示只会显示 XX * xx,在这种情况下,我将包装如下值:

$total = ($row['amount']) * ($row['price'])
于 2013-03-18T03:24:52.840 回答
0

像这样?

'<td>' . $row['amount'] * $row['price'] . '</td>'
于 2013-03-18T02:52:20.393 回答
0
$total_price = $row['amount'] * $row['price'];

您还需要这些调整:

 $html_table = '<table border="1" cellspacing="0" cellpadding="2"><tr><th>ID</th>      <th>Wine</th><th>Amount</th><th>Price</th><th>Total</th><th>upc</th></tr>';

在循环内:

 $html_table .= '<tr><td align="center">' .$row['id']. '</td><td align="center">' .$row['wine']. '</td><td align="center">' .$row['amount']. '</td><td align="center">' .$row['price']. '</td><td align="center">' .$row['upc']. '</td><td align="center">' . $total_price . '</td></tr>'; }
于 2013-03-18T02:52:34.577 回答