一周中有多少人在注册

嗨,我想用chatjs为我的项目制作一个图表。 我有一个用户表,当用户注册我的网站时,注册的时间是日期时间格式,如2018-03-02 10:35:25 。 我想用这个聊天DEMO来做到这一点

在此处输入图像描述

我需要编写一个PHP代码来显示图形,如:

 $months = array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"); $monthvalues = array(); foreach ($months as $month) { $monthvalues[$month] = 0; } $result = mysqli_query($db,"SELECT registerTime, count(*) FROM users group by WEEKDAY(registerTime)") or die(mysql_error($db)); while ($row = mysqli_fetch_array($result, MYSQL_NUM)) { $monthvalues[$row[0]] = (int)$row[1]; } 

我正在打印它

 // Data var data = { labels: , datasets: [{ label: "My Second dataset", fillColor: "rgba(151,187,205,0.2)", strokeColor: "rgba(151,187,205,1)", pointColor: "rgba(151,187,205,1)", pointStrokeColor: "#fff", pointHighlightFill: "#fff", pointHighlightStroke: "rgba(151,187,205,1)", data:  }] }; 

上面的查询只给我一个日志报告。 我不能在图表上显示它。 我需要一个可以每周反映的输出。

问题是,我无法弄清楚如何用代码做图表。 有人可以通过举个例子来帮助我吗?

结果应该是data: [28, 48, 40, 19, 86, 27, 90]

1月28日,2月= 48,…

如果要返回数组,则应使用GROUP BY,如下所示

 SELECT COUNT(registerTime) as `count` FROM users WHERE DATE(registerTime) = CURDATE() GROUP BY MONTH(registerTime) 

您可以在输出中添加月份编号以创建标签

 SELECT COUNT(registerTime) as `count`,MONTH(registerTime) as `month` FROM users WHERE DATE(registerTime) = CURDATE() GROUP BY MONTH(registerTime)