php - 使用 JSON 将 mysql 数据加载到 Highcharts 折线图

标签 php mysql json highcharts linechart

我正在尝试将数据从数据库导入折线图(Highcharts)。我的代码不起作用。

这是我的 PHP 代码:

<?php
require('../php/config.php');
        $con=mysqli_connect("localhost", "root", "ginnastica", "progetto");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }
        if(isset($_GET['src']))
        {   
        $records=array();
        $records =  select($mysqli,"SELECT Sesso AS name, Occupati AS data FROM occupazione WHERE Sesso='totale' AND Periodo LIKE '%2008'");
            $rows = array();
            $rows['name'] = 'Totale';
            while($r = mysql_fetch_assoc($records)) {
            $rows['data'][]=$r['data'];
            }
            return json_encode($rows);
        }
        else
            return json_encode(array('status' => 'error', 'details' => 'no src provided'));

    }
?>

“mysql_fetch_assoc”似乎不起作用。我的数组 $rows id 的输出是:

{

    "name": "Totale"

}

没有名为“数据”的元素。

我做错了什么?

最佳答案

首先:

  1. 值得查看 ../php/config.php 文件中的内容,因为该文件的内容可能会影响您提供的其他行的行为。
  2. ocupazione 表的结构和数据(至少几行数据)也值得一看,因为数据或结构也可能会改变输出。
  3. 您在 else 之后缺少一个 {,- 正如 @Moppo 已经提到的。
  4. 关于 mysql_fetch_assoc 的警告 该扩展自 PHP 5.5.0 起已弃用,并将在将来删除。相反,应使用 MySQLi 或 PDO_MySQL 扩展。在 php.net 中阅读更多内容

之后以及更多修复,我最终会以接近的方式编写您的代码:

<?php

$con = mysqli_connect("localhost", "root", "ginnastica", "progetto");
// Check connection
if (mysqli_connect_errno()) {
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
if (isset($_GET['src'])) {
    $records = $con->query("SELECT Sesso AS name, Occupati AS data FROM occupazione WHERE Sesso='totale' AND Periodo LIKE '%2008'");
    $rows = array();
    $rows['name'] = 'Totale';
    while ($r = $records->fetch_assoc()) {
        $rows['data'][] = $r['data'];
    }
    return json_encode($rows, JSON_NUMERIC_CHECK);
} else {
    return json_encode(array('status' => 'error', 'details' => 'no src provided'));
}

正如我所说,我们对您使用的数据库一无所知,所以我的猜测是您的选择不会返回任何行结果。然后你就没有数据(只有{"name": "Totale"}),只是因为while没有什么可以迭代的。

关于php - 使用 JSON 将 mysql 数据加载到 Highcharts 折线图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30691932/

相关文章:

php - Yii 中的更新操作是如何工作的

php - 通过 curl 和 preg_match 问题获取域到期日期/注册日期

json - JacksonPolymorphicDeserialization : JsonMappingException

(node_id, parent_node_id) 到 JSON 的 Python 列表

json - 如何在 package.json 的安装前/安装后脚本中调用多个调用

php - MySQL 查询中的 Foreach 循环

java explode a line/string 像 php explode

mysql - 无法为 Windows 10 重置 mysql root 密码

java - 在 Jasperreports 上拆分后获取第二个值

php - 去除不完整的 HTML 标签