1
我想創建這樣http://jsfiddle.net/9mmrbjt7/1/PHP圖圖來顯示跳過入門
我創建了一個腳本,將數據添加到圖表的圖表。日期和值存儲在分貝,它工作得很好。 php腳本計算日期的數量並將其用作值並將其分配給日期。
問題是如果有人錯過某一天,它會跳過我理解的價值。 那麼如何將零值分配給跳過的一天呢?
2014-07-23
2014-07-23 = 2,
2014-07-24 -> wasn't submitted so the 0 should be added to the graph with the date.
2014-07-25
2014-07-25
2014-07-25= 3,
php腳本
$user_curr_id = $_SESSION['user_id'];
$sql = mysqli_query($con,"SELECT * FROM rosary WHERE user_ids = $user_curr_id ORDER BY datum ASC");
$array1 = array();
while($row = mysqli_fetch_array($sql)){
$array1[] = '"' . $row['datum'] . '"';
}
$tags = implode(', ', array_unique(array_map('trim',explode(',',implode(',',$array1)))));
$sql = mysqli_query($con,"SELECT datum, COUNT(datum) cnt
FROM rosary
WHERE user_ids = $user_curr_id
GROUP BY datum;");
$result = array();
while ($row = mysqli_fetch_array($sql)) {
$result[] = $row['cnt']; // add the content of field cnt
}
在JS腳本
labels : ["Start",<?php echo $tags; ?>] -> list the dates from db
data : [0,<?php echo implode(',', $result); ?>]-> list values from db
數據庫無法從無到有。您需要一個臨時表,列出您可以加入的範圍內的每一天,以便您可以獲得零計數,或者在檢索查詢結果並填寫後,您必須在php中掃描數據集在那裏缺少天。 – 2014-08-28 18:16:04
是的,我喜歡做第二個選項,但不知道如何我可以掃描日期,如果沒有分配0 – Grasper 2014-08-28 18:17:37
如何在PHP中從$ min_date循環到$ max_date,如果未在$ result數組中設置日期,只需添加它的值爲0? – 2014-08-28 19:12:47