php - 使用 MySQL 中的数据时,在某些情况下不会绘制 Highcharts(在数据库查询完成之前创建的页面元素?) PHP/MySQL

标签 php mysql highcharts

我有一个页面需要从 MySQL 数据库中获取多个不同的数据集,然后使用该数据定义一些 jquery,以便使用该数据绘制图表(HighCharts 来描述 MySQL 数据)。

一些用户报告图表无法加载,这不是浏览器问题,也不是一致的。

我已经尝试了所有我能想到的方法来调试该问题,并得出结论:在某些情况下,在完成对数据库的调用之前正在加载页面,因此未加载图表。

因此,我决定放入一个缓冲页面:用户选择他们想要查看的数据,将其发布到一个带有短暂“加载”的页面(获取所有数据并将其存储在 $_SESSION 中),然后几秒钟后,它们被发送到绘制图形的页面,该页面现在不是基于数据库调用来绘制图形,而是基于 SESSION 中存储的数据来绘制图形。

这是一种明智的做法,还是对于更有经验的人来说这似乎很荒谬?

谢谢

PS:我的代码有几千行长,并且没有一个特定部分不起作用(它在 90% 的情况下都有效),所以我不确定如何在这个问题中有效地包含代码。

最佳答案

给你...

 $('#container').highcharts({
    data: {
        table: document.getElementById('datatable')
    }....//other chart details....

<table id="datatable">
<thead>
    <tr>
        <th></th>
        <th>Jane</th>
        <th>John</th>
    </tr>
</thead>
<tbody>
    <tr>
        <th>Apples</th>
        <td>3</td>
        <td>4</td>
    </tr>
    <tr>
        <th>Pears</th>
        <td>2</td>
        <td>0</td>
    </tr>
    <tr>
        <th>Plums</th>
        <td>5</td>
        <td>11</td>
    </tr>
    <tr>
        <th>Bananas</th>
        <td>1</td>
        <td>1</td>
    </tr>
    <tr>
        <th>Oranges</th>
        <td>2</td>
        <td>4</td>
    </tr>
</tbody>

您可以从 HTML 表格中获取数据,并在图表中使用它们... 希望这样做会比将其存储在 session 变量中更好..

关于php - 使用 MySQL 中的数据时,在某些情况下不会绘制 Highcharts(在数据库查询完成之前创建的页面元素?) PHP/MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16952847/

相关文章:

javascript - 使用ajax增量加载大量数据

javascript - SVG 渲染按钮在调整大小 Highcharts 上重新定位

php - 用php加速xml解析

javascript - 在上传之前,我可以在代码中的哪个位置将文件扩展名更改为小写?

php - 在应用程序和网络之间共享数据库

mysql - 删除查询-mysql

php - 亚马逊 MWS 订单 API 时间戳必须遵循 ISO8601

mysql - 如何增加 "primary key"自动增量数?

mysql - 无法执行数据库迁移: org. sonar.db.version.v60.PopulateProfileKeyOfActivities

jquery - 我如何在 Highcharts 中循环数据