一、背景
HTML中嵌入有js,js提供前端动态图表,现需要用数据库中数据对图表数据进行更新,选用php语言进行交互。默认数据库中数据表已建好,数据已录入。
二、解决
1.php
连接数据库并读取数据库中数据,将数据存储在PHP变量中。
2.js
在生成需要数据的图表的js代码块中新建数据变量(),将PHP变量中的数据存储到js变量中,即可使用。
P.S.此处定位图表代码可用浏览器的F12开发者工具
3.代码嵌套结构
<?php// 连接数据库$linkID = @mysqli_connect("localhost", "root", "root") or die("Could not connect to MySQL server");//@屏蔽错误,否则有错的话会把语句显示出来,不安全 @mysqli_select_db($linkID, "ddos") or die("Could not select database");// 查$query1="SELECT 报文长度最小值,报文生存时间均值,滑动窗口均值,同一源地址报文占比最大值 FROM rst";$result1=mysqli_query($linkID,$query1);while($row=mysqli_fetch_array($result1)){$len=$row['报文长度最小值'];$ttl=$row['报文生存时间均值'];$win=$row['滑动窗口均值'];$pct=$row['同一源地址报文占比最大值'];}mysqli_close($linkID);?>
<html><body ><script>var len="<?php echo $len;?>";var ttl="<?php echo $ttl;?>";var win="<?php echo $win;?>";var pct="<?php echo $pct;?>";function wbzl(){var wbzl=echarts.init(document.getElementById('wbzl'));var hours=['len','ttl','win','pct'];var days=['8月','9月','10月','11月'];var data=[[0,0,len],[0,1,len],[0,2,len],[0,3,len],[1,0,ttl],[1,1,ttl],[1,2,ttl],[1,3,ttl],[2,0,win],[2,1,win],[2,2,win],[2,3,win],[3,0,pct],[3,1,pct],[3,2,pct],[3,3,pct],];</script></body></html>