动态莫里斯行字符串转换错误

问题描述:

我试图做莫里斯折线图与使用PHP MySQL数据..但我得到数组字符串转换错误在我的控制台时,我调试。下面是我的代码动态莫里斯行字符串转换错误

 <?php 

      try { $stmt = $db->prepare(" SELECT register_date FROM members "); 
        $stmt->execute(); 
       } 
      catch(PDOException $e) { 
        echo '<p class="bg-danger">'.$e->getMessage().'</p>'; 
        } 


       $chart_data = array(); // define array 

       while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { 
        $signup = date('F d Y ', strtotime($row["register_date"])); 

        $chart_data .= "{ date: '" .$signup. "' },"; 

        } 

     ?> 

     <script type="application/javascript"> 

      Morris.Line({ 
        element: 'signups', // div id 
        data: [<?php echo $chart_data; ?>], 
        xkey: 'date', 
        ykeys: 'date', 
        lables: 'sigups', 
        hidehover: 'auto' 


       }); 

     </script> 

$chart_data包含无效JSON

请不要发明轮子,用json_encode

$chart_data = array(); // define array 
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { 
    $signup = date('F d Y ', strtotime($row["register_date"])); 
    $chart_data[] = ['date' => $signup]; 
} 

JS-部分:

Morris.Line({ 
    element: 'signups', // div id 
    data: <?php echo json_encode($chart_data); ?>, 
    xkey: 'date', 
    ykeys: 'date', 
    lables: 'sigups', 
    hidehover: 'auto' 
}); 
+0

如果我赞同json_encode($ chart_data)。我得到遗漏的类型错误:无法读取的不确定 –

+0

财产“匹配”有关的代码什么线? –

+0

简单搜索提出这个https://stackoverflow.com/questions/24601985/morris-js-uncaught-typeerror-cannot-read-property-match-of-undefined –