ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

php – 从异步AJAX响应加载Google Chart

2019-07-23 14:33:00  阅读:157  来源: 互联网

标签:php ajax google-visualization


在旧的Google Chart API中,可以使用PHP来呈现图表,甚至还有一个包装器可以执行此操作:
http://code.google.com/p/gchartphp/

但是使用新的Chart API
http://code.google.com/apis/chart/
这会生成更多更漂亮的图表,但只能在浏览器中加载javascript.

我想要实现的效果是通过AJAX向服务器提交多项选择表单,让PHP更新数据库服务器,然后返回更新的图表.

在旧的API方式中,我可以做到这一点.但是以新的方式,我将javascript返回到浏览器并将其附加到文档以呈现图表.它不会因此而执行.我相信我可以eval()这个javascript,但这是不好的形式不是因为有人可以做一些讨厌的东西,他们不能 – eval()服务器端响应?

我怎么能克服这个?有没有PHP包装器来帮助这个?还是有另一个我忽略的原因?

非常感谢

解决方法:

我最终解决这个问题的方式非常明显.我只需要超越自己的想法,从不同的角度来看待它.

我正在尝试处理数据库信息的所有腿部工作,并使用PHP在服务器端创建Google Chart(在本例中为饼图).然后将其作为AJAX响应返回.

实际上,我需要做的就是返回创建饼图所需的数据(以及一些额外的元数据,例如目标元素id).我这样做是为了JSON.然后,通过浏览Google Charts文档,我能够找到如何使用客户端javascript来加载返回的JSON数据来触发API.然后让Google代码渲染图表客户端 – 所以我基本上将所有渲染责任转移到客户端浏览器.这是新旧图表API的不同之处.

需要大量的试验和错误以及Firebug提供的大量帮助.值得一提的一个重大绊脚石是,您需要在收到JSON响应之前加载所有Google JSAPI – 以便初始页面呈现 – 并且您必须执行以下操作:

google.load("visualization", "1", {packages:["corechart"]});

确保它在页面呈现时加载.如果在页面完全呈现后调用此页面,则页面将重新加载.

希望这有助于某人.

标签:php,ajax,google-visualization
来源: https://codeday.me/bug/20190723/1514371.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有