gpt4 book ai didi

php - 选择一个表中的所有值和另一表中的一些值并用 php 显示它们

转载 作者:行者123 更新时间:2023-11-29 20:16:44 25 4
gpt4 key购买 nike

我试图从一个表中获取所有值,并从另一表中获取一些值,并使用 php 和 html 显示它们。这是我正在尝试修改的一个演示销售点程序。

我试图修改的部分是销售报告页面,最初我有交易ID日期发票号码金额备注。我想添加另一个表中的一些值(即销售“名称”和“数量”)。

这是我所做的:

            <?php
include('../connect.php');
$d1=$_GET['d1'];
$d2=$_GET['d2'];
$result = $db->prepare("SELECT sales.* , sales_order.name, sales_order.qty FROM sales,sales_order WHERE date BETWEEN :a AND :b");
$result->bindParam(':a', $d1);
$result->bindParam(':b', $d2);
$result->execute();
for($i=0; $row = $result->fetch(); $i++){
?>
<tr class="record">
<td>STI-000<?php echo $row['transaction_id']; ?></td>
<td><?php echo $row['date']; ?></td>
<td><?php echo $row['name']; ?></td>
<td><?php echo $row['invoice_number']; ?></td>
<tf><?php echo $row{'invoice_number'};?></td>
<td><?php
$dsdsd=$row['amount'];
echo formatMoney($dsdsd, true);
?></td>
<td><?php echo $row['type']; ?></td>
</tr>
<?php
}
?>

</tbody>
<thead>
<tr>
<th colspan="4" style="border-top:1px solid #999999"> Total </th>
<th colspan="2" style="border-top:1px solid #999999">
<?php
function formatMoney($number, $fractional=false) {
if ($fractional) {
$number = sprintf('%.2f', $number);
}
while (true) {
$replaced = preg_replace('/(-?\d+)(\d\d\d)/', '$1,$2', $number);
if ($replaced != $number) {
$number = $replaced;
} else {
break;
}
}
return $number;
}
$d1=$_GET['d1'];
$d2=$_GET['d2'];
$results = $db->prepare("SELECT sum(amount) FROM sales WHERE date BETWEEN :a AND :b");
$results->bindParam(':a', $d1);
$results->bindParam(':b', $d2);
$results->execute();
for($i=0; $rows = $results->fetch(); $i++){
$dsdsd=$rows['sum(amount)'];
echo formatMoney($dsdsd, true);
}
?>
</th>
</tr>
</thead>
</table>

最佳答案

假设链接表 salessales_order 的键是字段 invoice_number,您必须使用 INNER JOIN(或左连接(根据您的需要)如下:

$result = $db->prepare("SELECT sales.* , sales_order.name, sales_order.qty FROM sales INNER JOIN sales_order ON sales.invoice_number = sales_order.invoice_number WHERE sales.date BETWEEN :a AND :b");

如果链接两个表的键是其他内容,则只需更新 ON sales.invoice_number = sales_order.invoice_number 以匹配正确的列名称

另外,在连接表时,不要忘记在每个字段之前添加表的名称,因为如果在多个表中具有相同的字段名称,则会出现错误,因为 mysql 不知道在哪个表中它必须从中获取数据。

关于php - 选择一个表中的所有值和另一表中的一些值并用 php 显示它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39720151/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com