[英]PHP, MySQL statistics
我有一個帶有統計表的MySQL數據庫。 我想在年度日歷中每月輸出數據。 在幾個月沒有點擊的情況下,我想花費一個“空”的DIV。 有兩個ID。
$query = mysqli_query($db,"SELECT `id`, MONTH(`date`) AS `month`, COUNT(*) AS `quant`
FROM `statistic` WHERE YEAR(`date`) = '2014' && `k_id` = '12345' group by `id`, `month`");
while($xyz = mysqli_fetch_object($query)) {
if($old != $xyz->id) {
if($old=='') {
echo '<div class="statistic“>‘.“\n“;
}
else {
echo '</div>'."\n";
echo '<div class="statistic“>‘.“\n“;
}
$old = $xyz->id;
}
echo '<div class="'.$ausgabe->month.’“>’.$xyz-> quant.'</div>'."\n";
}
我的結果:
<div class="statistic">
<div class="6">11</div>
<div class="7">6</div>
<div class="8">20</div>
</div>
<div class="statistic">
<div class="7">1</div>
<div class="8">8</div>
</div>
我想要的是:
<div class="statistic">
<div class="1">0</div>
<div class="2">0</div>
<div class="3">0</div>
<div class="4">0</div>
<div class="5">0</div>
<div class="6">11</div>
<div class="7">6</div>
<div class="8">20</div>
<div class="9">0</div>
<div class="10">0</div>
<div class="11">0</div>
<div class="12">0</div>
</div>
<div class="statistic">
<div class="1">0</div>
<div class="2">0</div>
<div class="3">0</div>
<div class="4">0</div>
<div class="5">0</div>
<div class="6">0</div>
<div class="7">1</div>
<div class="8">8</div>
<div class="9">0</div>
<div class="10">0</div>
<div class="11">0</div>
<div class="12">0</div>
</div>
謝謝!
我會將您的代碼更改為以下代碼,因為您會提前知道要顯示多少個月。
$statArr = array();
while($xyz = mysqli_fetch_object($query)) {
$statArr[(int)$xyz->month] = $xyz->quant;
}
for ($i = 1; $i <= 12; $i++) {
echo '<div class="' . $i . '">' . (isset($statArr[$i]) ? $statArr[$i] : 0) . '</div>'
}
一些注意事項。 首先,以數字開頭的類不是有效的CSS類名。 其次,如果您不熟悉簡寫的if-else語句,則將其稱為三元運算。 如果$statArr
具有索引,請使用它。 否則輸出零。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.