【问题标题】:json mysql data to d3 plotjson mysql数据到d3情节
【发布时间】:2013-07-04 12:40:23
【问题描述】:

我正在尝试用 d3 绘制 mysql 数据。我正在使用 php 转换为 json 格式,但它还不起作用!出于测试目的,我按照here 指示的步骤进行操作 我在 XAMPP 上使用 simple-graph.html 和我自己的 php 文件。

include('connect.php');
$result=$con->query("SELECT date, close FROM testable");    
echo json_encode($result->fetchAll(PDO::FETCH_ASSOC)); 

它以 json 格式回显,如下所示:[{"date":"1-May-12","close":"43.32"},{"date":"30-Apr-12","close":"22.54"},{"date":"27-Apr-12","close":"21.54"},{"date":"25-Apr-12","close":"21.42"}]

当我提供 json 文件而不是 php 文件时,图表会显示。

这行得通:

d3.json("json.json", function(error, data) {        
data.forEach(function(d) {                              
d.date =parseDate(d.date);                          
d.close = +d.close;                                 
});

这不起作用:

d3.json("tablecreate.php", function(error, data) {      
data.forEach(function(d) {                              
d.date =parseDate(d.date);                          
d.close = +d.close;                                 
});

所有文件都在同一个文件夹中。

有人可以指出我的错误吗?

【问题讨论】:

  • 当你说它不起作用时,你是什么意思?您是否收到错误或没有显示您希望显示的内容?检查您的 PHP 脚本的输出是您期望的 JSON(并且只有 JSON)。
  • 我得到一个空白页。抱歉忘记了
  • 作为测试,您能否在浏览器中运行您的 php 脚本,然后获取回显的结果,将它们保存在一个名为 xxx.json 的文件中,然后让页面打开该 json?只是想消除返回数据的过程破坏数据的任何可能性。
  • 是的,我已经做到了,而且确实有效。所以php应该没有问题。 XAMPP 会不会有权限问题?
  • 应该没有权限问题。如果您可以将'tablecreate.php' url 放在url 栏中并在屏幕上返回回显的数据,那么应该没问题。您是否尝试过使用控制台来确定脚本中是否存在错误(developers.google.com/chrome-developer-tools/docs/console)?

标签: php mysql json d3.js


【解决方案1】:

您尚未提供完整的 php 源代码,说明如何将 json 输出发送到 d3 脚本。一个问题是,如果您没有发送正确的内容类型标头。以下是d3的API参考部分内容。

使用 mime 在指定 url 创建对 JSON 文件的请求 输入“应用程序/json”。如果指定了回调,则请求为 立即使用 GET 方法发出,回调将是 文件加载或请求失败时异步调用; 使用两个参数调用回调:错误(如果有)和 解析的 JSON。如果发生错误,解析的 JSON 是未定义的。如果不 指定回调,返回的请求可以使用 xhr.get 或类似的,并使用 xhr.on 处理。

确保您在回显 json 输出之前已发出以下语句。

header("Content-Type: application/json");

【讨论】:

  • 谢谢。它没有任何效果。会不会是 XAMPP 问题?当我使用 json 文件但不在 localhost 上时,该图会显示在浏览器中。
猜你喜欢
  • 2012-10-14
  • 1970-01-01
  • 1970-01-01
  • 2013-04-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-03
相关资源
最近更新 更多