搜索
查看: 1468|回复: 0

ECharts实现mysql 数据图表化

[复制链接]

586

主题

860

帖子

2190

积分

管理员

本论坛第一帅

Rank: 9Rank: 9Rank: 9

积分
2190

热心会员推广达人宣传达人突出贡献优秀版主荣誉管理论坛元老

QQ
发表于 2020-5-19 22:47:04 | 显示全部楼层 |阅读模式

采用 AJAX,通过 PHP,从 MySQL 取出数据,然后将数据使用 ECharts 展示。如果想要动态刷新图标,那么设置一个定时器,定时取数,就可以达到目的。

mysql 图表.jpg

数据库

数据库名:kali 表名:ecahrts 字段有:id city sun av qs 详细结构如下:

数据库结构

配置 PHP 文件

$mysqli=new mysqli('127.0.0.1','root','123456','kali');
mysqli_query($mysqli,"set names 'utf8'");
$sql="SELECT * FROM ecahrts";
$result = $mysqli->query($sql,MYSQLI_USE_RESULT);
if($result){
        $i=0;
        $categories=array();
        $datas=array();
        while($row = $result->fetch_assoc())
         {
                $categories[$i]=$row['city'];
                $datas[$i]=$row['sun'];
                $datas1[$i]=$row['av'];
                $datas2[$i]=$row['qs'];
                $i=$i+1;
         }
        $arr=array('categories'=>$categories,'data'=>$datas,'data1'=>$datas1,'data2'=>$datas2);
        echo json_encode($arr);
}
$mysqli->close();

主要参数说明: 读取数据库中的数据,并且复制给数组 $arr 验证 将上面 PHP 保存为 api.php,访问 127.0.0.1/api.php 这里需要注意的是,在数据库中我的字段 city 是中文。Ajax 读取数据后是乱码,于是我采用 mysqli_query($mysqli,"set names 'utf8'"); 将其通过 PHP 编码即可。

绘制图表

引用各种 js

!!!







核心代码解读

function addData(){
$.get('aip.php').done(function(data,status) 从api.php中获取数据
var data=eval('('+data+')'); //转换为json

完整 HTML 代码

使用

index.htmlapi.php 放到你的根目录,修改数据库信息和字段信息。访问你的主机 ip 即可。

有志者,事竟成,破釜沉舟,百二秦关终属楚. 苦心人,天不负, 卧薪尝胆 ,三千越甲可吞吴
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

温馨提示
1:发帖请遵守《中华人民共和国网络安全法》,发帖内容不得维护国家的、集体的、个人的利益。
2:请勿发布恶意攻击他人的技术文章、工具、和使用教程,发现后删帖处理。
3:本站的目的在于让更多的人了解网络安全,避免受到他人的恶意攻击。
4:本站中的部分文章,可能会出现一些“技术类手段”,但这仅仅为学习演示所用,而非恶意传播技术。
5:本站中的部分文章,可能转载自互联网。如有侵权行为,联系我们删除即可。
6:学习仅是充实头脑,切勿恶意攻击个人、企业等。所造成的法律后果一切由自己承担,本站及其站长概不负责。
我知道了
快速回复 返回顶部 返回列表