Заполнение данных для Google диаграммы из базы данных - PullRequest
0 голосов
/ 21 апреля 2020

Я пытаюсь внедрить данные из базы данных в диаграмму Google, но она по-прежнему не работает и показывает «Таблица не имеет столбцов. ×» или диаграмма не отображается вообще. Я в основном вызываю запрос, превращаю его в таблицу Json и загружаю в таблицу Google.

:

<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
    <script type="text/javascript"src="https://code.jquery.com/jquery-3.5.0.js"> </script>
    <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

    <script type="text/javascript">
      google.charts.load('current', {'packages':['corechart']});
      google.charts.setOnLoadCallback(drawChart);

      function drawChart (){

            var jsonData = $.ajax({
            url: "fetch2.php",
            method: "POST",
            dataType: "json",
            async: false,
            }).responseText;

         var data = new google.visualization.DataTable(jsonData);

        }
        var chart = new google.visualization.ScatterChart(document.getElementById('chart_div2'));
        chart.draw(data, options);

      }
    </script>

//...
 <div id="chart_div2" style="height: 300px;" class="cartographie"></div>

и fetch2. php:

<?php

$bdd = new PDO("mysql: host=127.0.0.1 ; dbname=test immobilier;charset=utf8", "root","");
$results = $bdd -> query("SELECT `Date`,`Prix` FROM `table 4` WHERE `Commune` = 'Paris' ORDER BY `Date`"); 

$data = array();
$data['cols'] = array(
    array('label' => 'Jour',    'type' => 'number'),
    array('label' => 'Prix',    'type' => 'number'));

$rows = array();
foreach ($results as $row) {
    $temp = array();

    $temp[] = array('v' => (int) $row[0]); 
    $temp[] = array('v' => (int) $row[1]);

     $rows[] = array('c' => $temp);

}

$data['rows'] = $rows;

$json = json_encode(array("data" => $data));
echo $json;

?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...