我正在使用 Amcharts 创建柱形图,该柱形图可以旋转并成为水平条形图。我正在使用 Amcharts 的 dataLoader
插件连接到一个 php 文件,该文件连接到 mysql 并检索数据,并且该 php 文件正在将数据输出为 JSON
我面临的问题是,如果 php 文件与包含 html 的文件位于同一文件夹中,则图表会正确加载
,
"dataLoader": {
"url": "data.php"
},
但是,如果我将 php 文件放入包含文件夹中,则图表不会加载,并且会显示空白屏幕。
,
"dataLoader": {
"url": "http://MyWebsite.com/include/data.php"
},
我检查了根目录和包含文件夹中的 php json 文件,两者都正确输出了有效的 JSON
我不想使用 Jquery,而且我是 javascript 新手。请告诉我我做错了什么。
更新 -
此加载错误时有时无。这是浏览器控制台中出现的错误 - 无法加载 http://MyWebsite.com/include/data.php: 请求的资源上不存在“Access-Control-Allow-Origin” header 。Origin '因此不允许访问 http://www.MyWebsite.com
最佳答案
由于浏览器的安全性,尝试从不同地址加载内容可能会导致跨域错误,如下所述:Access-Control-Allow-Origin Multiple Origin Domains? 。正如您所提到的,同一网站的 http://
和 http://www
之间的差异导致它引发和关闭错误。
考虑到调用实际上是针对同一地址,最好的解决方案是将 http://MyWebsite.com/include/data.php
更改为 include/data.php
关于javascript - Amcharts - 当 php json 输出文件位于包含文件夹中时,Dataloader 插件不加载图表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46958015/