我有一个简单的售票登记系统,有6种票和3个不同的“实体”售票地点。每个订单作为一行插入到数据库中,并存储每种类型的票的金额以及销售地点、总成本和日期时间戳。
我想显示每种票类型的总金额,即在给定的时间框架内售出的总金额以及这些票的总成本。我还想根据销售地点过滤结果。
这是我的数据库查询:
"SELECT SUM(ticketType1), SUM(ticketType2), SUM(ticketType3),
SUM(ticketType4), SUM(ticketType5), SUM(ticketType6),
SUM(cost), saleLocation
FROM `orders`
WHERE time BETWEEN '2018-07-10 07:00:01'
AND '2018-07-11 07:00:00'"
然后在html表格行中显示:
<?php
while ($row = $result->fetch_assoc()) {
if($row["saleLocation"] == 'location1') { ?>
<div class="cell">
<?php echo $row["SUM(ticketType1)"] ?>
</div>
<div class="cell">
<?php echo $row["SUM(ticketType2)"] ?>
</div>
<div class="cell">
<?php echo $row["SUM(ticketType3)"] ?>
</div>
<div class="cell">
<?php echo $row["SUM(ticketType4)"] ?>
</div>
<div class="cell">
<?php echo $row["SUM(ticketType5)"] ?>
</div>
<div class="cell">
<?php echo $row["SUM(ticketType6)"] ?>
</div>
<div class="cell">
<?php echo number_format($row["SUM(cost)"], 0, "", "."); ?>
</div>
<?php } //end if
} // end while
?>
它可以工作,但我尝试在while循环中使用if语句根据位置过滤结果,但是if语句似乎没有任何效果,而是显示所有3个位置的结果。我知道我可以很容易地修改查询来实现这一点,但我不希望在这种特定情况下这样做。
不过,我猜问题还是出在查询中?
我们将非常感谢您的帮助。
暂无答案!
目前还没有任何答案,快来回答吧!