首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将MySQL日期转换为FLOT时间序列数据的Javascript时间戳

将MySQL日期转换为FLOT时间序列数据的Javascript时间戳
EN

Stack Overflow用户
提问于 2016-01-12 10:26:23
回答 1查看 768关注 0票数 0

我目前正在创建一个Flot JavaScript时间序列线图。该图表分析了与创建帐户的时间相比创建帐户的用户数量。

下面是用户表的屏幕截图

到目前为止,我已经能够检索用于该图形的用户表x中的created_date列。然后在单独的查询中使用COUNT()函数计算y轴。我的密码在下面找到。

PHP:

代码语言:javascript
运行
复制
<?php

include "connection/connect2.php"; 
$datecreated = "SELECT created_date FROM users";
$rundatecreated = mysql_query($datecreated);
$foundnum = mysql_num_rows($rundatecreated);
while ($runrows = mysql_fetch_assoc($rundatecreated)) {
$dataset1[] = $runrows['created_date'];
}

if (is_array($dataset1)){
foreach($dataset1 as $x) {

  $query = mysql_query("SELECT created_date, count(created_date) as date FROM users WHERE created_date='$x' "); 
  while ($runquery = mysql_fetch_assoc($query)){
       $y[]= $runquery['created_date'] .",".$runquery['date']."<br>" ;
      } 
}

$graph=implode(" ", $y);
echo $graph;

} else {

echo "error";
}

?>

然后,我将使用这两个查询检索到的数据存储到一个数组中,如下所示。

我不知道如何将当前使用我的PHP代码检索的日期数据转换为JavaScript时间戳格式。我是否可以使用PHP代码这样做呢?

EN

Stack Overflow用户

发布于 2016-01-12 11:10:39

1)您只需要一个SQL查询就可以实现这一点,而不是每次一加一。为此,请在查询中进行分组。

2)要从dat值中获取时间戳,请使用getTimestamp()方法并乘以100将UNIX时间戳转换为JavaScript时间戳。

3) Flot需要数据序列的数据作为数组(数据点)。然后,可以将其编码为JSON,并在JavaScript中打印或由AJAX获取。

更新的代码(没有测试,但应该是一个很好的起点):

代码语言:javascript
运行
复制
<?php

include "connection/connect2.php";
$query = mysql_query("SELECT created_date, count(*) as date FROM users GROUP BY created_date "); 
$foundnum = mysql_num_rows(mysql_query($query));
while ($runquery = mysql_fetch_assoc($query)){
    $graph[] = array((new DateTime($runquery['created_date']))->getTimestamp() * 1000 , $runquery['date']);
} 

if ($foundnum > 0) {
   echo json_encode($graph);
} else {
    echo "error";
}

?>
票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34741110

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档