Tryag File Manager
Home
||
Turbo Force
||
B-F Config_Cpanel
Current Path :
/
home
/
nonga.eemo.co.kr
/
public_html
/
www
/
Or
Select Your Path :
Upload File :
New :
File
Dir
/home/nonga.eemo.co.kr/public_html/www/farm_iot_graph.php
<? session_cache_limiter('no-cache, must-revalidate'); session_start(); header("Pragma: no-cache"); header("Cache-Control: no-cache,must-revalidate"); header("Content-Type: text/html; charset=utf-8"); include_once("dbconn.php"); include_once("lib.php"); foreach($_GET as $key => $value) { ${$key}=mysql_real_escape_string(trim($value)); } foreach($_POST as $key => $value) { ${$key}=mysql_real_escape_string(trim($value)); } if($_COOKIE[umem_no]) { $rs_my=RS("select * from member where no='{$_COOKIE[umem_no]}' "); if($rs_my[mtype]==1 || $rs_my[mtype]==2) { $rs_farm=RS("select * from farm where no='{$rs_my[farm_no]}' "); $farm_code=$rs_farm[farm_code]; $farm_no=$rs_farm[no]; } } else { $rs_farm=RS("select * from farm where farm_code='$farm_code' "); $farm_no=$rs_farm[no]; } include_once("navigation.php"); $result=mysql_query("select * from farm_dong_info where farm_no='$farm_no' order by CAST(dong_name AS DECIMAL(10,2)) asc ") or die(mysql_error()); $arr_dong=array(); while($rs=mysql_fetch_array($result)) { $obj=(object) $c; $obj->dong_name=$rs[dong_name]; $obj->dong_no=$rs[no]; array_push($arr_dong,$obj); } if(!$sel_dong_no) { $sel_dong_no=$arr_dong[0]->dong_no; } if(!$sel_mode) { $sel_mode=1; } if($sel_mode==1) { $result_sens=mysql_query("select * from farm_sensor where dong_no='$sel_dong_no' and sensor_type='1' order by pos_no asc ") or die(); $arr_senno=array(); $arr_sen_time=array(); $arr_sen_name=array(); $arr_sen_data=array(); $arr_sen_data2=array(); $arr_sen_str_data=array(); $arr_sen_str_data2=array(); $arr_sen_str_time=array(); while($rs_sens=mysql_fetch_array($result_sens)) { $arr_senno[$rs_sens[no]]=array(); $arr_sen_data[$rs_sens[no]]=array(); $arr_sen_data2[$rs_sens[no]]=array(); $arr_sen_time[$rs_sens[no]]=array(); $arr_sen_name[$rs_sens[no]]=$rs_sens[pos_no]; $arr_sen_str_data[$rs_sens[no]]=array(); $arr_sen_str_data2[$rs_sens[no]]=array(); $arr_sen_str_time[$rs_sens[no]]=array(); } foreach($arr_senno as $ak => $av) { //echo $ak."<br>"; //echo $arr_sen_name[$ak]."<br>"; if(!$v_num) { $v_num=100000; } $sub_query=''; // $query="select count(no) as cnt from iot_raw where sensor_no='$ak' "; // if($search) { // $sub_query.=" and jdate like '%$search%' "; // } // if($sub_query) {$query.=$sub_query;} // $rs=RS($query); // vari($rs[cnt],10,$v_num,$c_page); $query="select * from iot_raw where sensor_no='$ak' order by `no` asc "; // if($sub_query) {$query.=$sub_query;} // $limit=$v_num; // $query.=" order by no desc limit $offset, $limit "; //$result_data=mysql_query("select * from iot_raw where sensor_no='$ak' order by jtime desc limit 0,120 ") or die(); $result_data=mysql_query($query) or die(); while($rs_data=mysql_fetch_array($result_data)) { array_push($arr_sen_data[$ak],$rs_data[temp]); array_push($arr_sen_data2[$ak],$rs_data[humi]); array_push($arr_sen_time[$ak],"'".date('m.d H:i',strtotime($rs_data[jtime]))."'"); } krsort ( $arr_sen_data[$ak] ); krsort ( $arr_sen_data2[$ak] ); krsort ( $arr_sen_time[$ak] ); $arr_sen_str_data[$ak]=implode(",",$arr_sen_data[$ak]); $arr_sen_str_data2[$ak]=implode(",",$arr_sen_data2[$ak]); $arr_sen_str_time[$ak]=implode(",",$arr_sen_time[$ak]); //echo $arr_sen_str_data[$ak]."\n\n"; //echo $arr_sen_str_time[$ak]."\n\n"; } } else if($sel_mode==2) { $arr_color=array("0"=>"#ff8080","1"=>"#ff0000","2"=>"#80ff80","3"=>"#0080ff","4"=>"#8080ff","5"=>"#000000","6"=>"#8000ff","7"=>"#808000","8"=>"#c0c0c0","9"=>"#6666ff","10"=>"#33ffcc","11"=>"#99cc66","12"=>"#00ff33","13"=>"#00cc00"); $result_sens=mysql_query("select * from farm_sensor where dong_no='$sel_dong_no' and sensor_type='1' group by pos_no order by pos_no asc ") or die(); $arr_sen_pos=array(); $arr_sen_no=array(); $arr_sen_name=array(); $arr_sen_color=array(); $arr_sen_data=array(); $arr_sen_data2=array(); $arr_sen_str_data=array(); $arr_sen_str_data2=array(); $arr_sen_str_time=array(); $c=0; while($rs_sens=mysql_fetch_array($result_sens)) { $arr_sen_pos[$rs_sens[pos_no]]=array(); $arr_sen_no[$rs_sens[pos_no]]=$rs_sens[no]; $arr_sen_color[$c]="'".$arr_color[$c]."'"; $arr_sen_data[$rs_sens[pos_no]]=array(); $arr_sen_data2[$rs_sens[pos_no]]=array(); $arr_sen_time[$rs_sens[pos_no]]=array(); $arr_sen_name[$rs_sens[pos_no]]=$rs_sens[pos_no]; $arr_sen_str_data[$rs_sens[pos_no]]=array(); $arr_sen_str_data2[$rs_sens[pos_no]]=array(); $arr_sen_str_time[$rs_sens[pos_no]]=array(); $c++; } $arr_str_color=implode(",",$arr_sen_color); foreach($arr_sen_pos as $ak => $av) { //echo $ak."<br>"; //echo $arr_sen_name[$ak]."<br>"; if(!$v_num) { $v_num=50; } $sub_query=''; $query="select count(no) as cnt from iot_raw a where sensor_no='{$arr_sen_no[$ak]}' "; if($search) { $sub_query.=" and jdate like '%$search%' "; } if($sub_query) {$query.=$sub_query;} $rs=RS($query); vari($rs[cnt],10,$v_num,$c_page); $query="select * from iot_raw where sensor_no='{$arr_sen_no[$ak]}' "; if($sub_query) {$query.=$sub_query;} $limit=$v_num; $query.=" order by no desc limit $offset, $limit "; //$result_data=mysql_query("select * from iot_raw where sensor_no='$ak' order by jtime desc limit 0,120 ") or die(); $result_data=mysql_query($query) or die(); while($rs_data=mysql_fetch_array($result_data)) { array_push($arr_sen_data[$ak],$rs_data[temp]); array_push($arr_sen_data2[$ak],$rs_data[humi]); array_push($arr_sen_time[$ak],"'".date('m.d H:i',strtotime($rs_data[jtime]))."'"); } krsort ( $arr_sen_data[$ak] ); krsort ( $arr_sen_data2[$ak] ); krsort ( $arr_sen_time[$ak] ); $arr_sen_str_data[$ak]=implode(",",$arr_sen_data[$ak]); $arr_sen_str_data2[$ak]=implode(",",$arr_sen_data2[$ak]); $arr_sen_str_time[$ak]=implode(",",$arr_sen_time[$ak]); //echo $arr_sen_str_data[$ak]."\n\n"; //echo $arr_sen_str_time[$ak]."\n\n"; } } else if($sel_mode==3) { $arr_color=array("0"=>"#ff8080","1"=>"#ff0000","2"=>"#80ff80","3"=>"#0080ff","4"=>"#8080ff","5"=>"#000000","6"=>"#8000ff","7"=>"#808000","8"=>"#c0c0c0","9"=>"#6666ff","10"=>"#33ffcc","11"=>"#99cc66","12"=>"#00ff33","13"=>"#00cc00"); $result_sens=mysql_query("select * from farm_sensor where dong_no='$sel_dong_no' and sensor_type='1' group by pos_no order by pos_no asc ") or die(); $arr_sen_pos=array(); $arr_sen_no=array(); $arr_sen_name=array(); $arr_sen_color=array(); $arr_sen_data=array(); $arr_sen_data2=array(); $arr_sen_str_data=array(); $arr_sen_str_data2=array(); $arr_sen_str_time=array(); $arr_base_time=array(); $arr_base_time2=array(); $c=0; while($rs_sens=mysql_fetch_array($result_sens)) { $arr_sen_pos[$rs_sens[pos_no]]=array(); $arr_sen_no[$rs_sens[pos_no]]=$rs_sens[no]; $arr_sen_color[$c]="'".$arr_color[$c]."'"; $arr_sen_data[$rs_sens[pos_no]]=array(); $arr_sen_data2[$rs_sens[pos_no]]=array(); $arr_sen_time[$rs_sens[pos_no]]=array(); $arr_sen_name[$rs_sens[pos_no]]=$rs_sens[pos_no]; $arr_sen_str_data[$rs_sens[pos_no]]=array(); $arr_sen_str_data2[$rs_sens[pos_no]]=array(); $arr_sen_str_time[$rs_sens[pos_no]]=array(); $c++; } $arr_str_color=implode(",",$arr_sen_color); if(!$c_page) {$c_page=1;} $v_offset=($c_page-1)*12; if($v_offset<0) {$v_offset=0;} /* SELECT CONCAT( DATE( jtime ) , ' ', HOUR( jtime ) ) AS vdate, no, humi FROM iot_raw WHERE dong_no = '31' GROUP BY CONCAT( DATE( jtime ) , ' ', HOUR( jtime ) ) ORDER BY jtime DESC */ /* $result_time_base=mysql_query("select concat(date(jtime),' ',LPAD(hour(jtime),2,'0')) as vdate, no, humi from iot_raw where dong_no='$sel_dong_no' group by concat(date(jtime),' ',LPAD(hour(jtime),2,'0')) order by jtime desc limit $v_offset, 12 ") or die(); while($rs_time_base=mysql_fetch_array($result_time_base)) { $arr_base_time[]=$rs_time_base[vdate]; $exp_time=explode(" ",$rs_time_base[vdate]); $exp_tt=explode("-",$exp_time[0]); $arr_base_time2[]="'".$exp_tt[1].".".$exp_tt[2]." ".$exp_time[1]."시"."'"; } */ $result_time_base=mysql_query("select jdate, jhour, concat(jdate,' ',jhour) as vdate from iot_hour where dong_no='$sel_dong_no' group by concat(jdate,' ',jhour) order by concat(jdate,' ',jhour) desc limit $v_offset, 12 ") or die(); while($rs_time_base=mysql_fetch_array($result_time_base)) { $arr_base_time[]=$rs_time_base[vdate]; $arr_base_time2[]="'".date('m-d',strtotime($rs_time_base[jdate]))." ".$rs_time_base[jhour]."시"."'"; } krsort ( $arr_base_time2 ); $arr_str_base_time=implode(",",$arr_base_time2); //echo $arr_str_base_time."\n\n"; foreach($arr_sen_pos as $ak => $av) { foreach($arr_base_time as $tk => $tv) { $rs_data=RS("select temp as tem, humi as hum from iot_hour where sensor_no='{$arr_sen_no[$ak]}' and concat(jdate,' ',jhour)='$tv' "); if($rs_data[tem]) { array_push($arr_sen_data[$ak],sprintf("%.1f",$rs_data[tem])); } else { array_push($arr_sen_data[$ak],0); } if($rs_data[hum]) { array_push($arr_sen_data2[$ak],sprintf("%.1f",$rs_data[hum])); } else { array_push($arr_sen_data2[$ak],0); } } krsort ( $arr_sen_data[$ak] ); krsort ( $arr_sen_data2[$ak] ); //krsort ( $arr_sen_time[$ak] ); $arr_sen_str_data[$ak]=implode(",",$arr_sen_data[$ak]); $arr_sen_str_data2[$ak]=implode(",",$arr_sen_data2[$ak]); //echo $arr_sen_str_data[$ak]."\n\n"; } $t_page=1000000; } else if($sel_mode==4) { $arr_color=array("0"=>"#ff8080","1"=>"#ff0000","2"=>"#80ff80","3"=>"#0080ff","4"=>"#8080ff","5"=>"#000000","6"=>"#8000ff","7"=>"#808000","8"=>"#c0c0c0","9"=>"#6666ff","10"=>"#33ffcc","11"=>"#99cc66","12"=>"#00ff33","13"=>"#00cc00"); $result_sens=mysql_query("select * from farm_sensor where dong_no='$sel_dong_no' and sensor_type='1' group by pos_no order by pos_no asc ") or die(); $arr_sen_pos=array(); $arr_sen_no=array(); $arr_sen_name=array(); $arr_sen_color=array(); $arr_sen_data=array(); $arr_sen_data2=array(); $arr_sen_str_data=array(); $arr_sen_str_data2=array(); $arr_sen_str_time=array(); $arr_base_time=array(); $arr_base_time2=array(); $c=0; while($rs_sens=mysql_fetch_array($result_sens)) { $arr_sen_pos[$rs_sens[pos_no]]=array(); $arr_sen_no[$rs_sens[pos_no]]=$rs_sens[no]; $arr_sen_color[$c]="'".$arr_color[$c]."'"; $arr_sen_data[$rs_sens[pos_no]]=array(); $arr_sen_data2[$rs_sens[pos_no]]=array(); $arr_sen_time[$rs_sens[pos_no]]=array(); $arr_sen_name[$rs_sens[pos_no]]=$rs_sens[pos_no]; $arr_sen_str_data[$rs_sens[pos_no]]=array(); $arr_sen_str_data2[$rs_sens[pos_no]]=array(); $arr_sen_str_time[$rs_sens[pos_no]]=array(); $c++; } $arr_str_color=implode(",",$arr_sen_color); if(!$c_page) {$c_page=1;} $v_offset=($c_page-1)*12; if($v_offset<0) {$v_offset=0;} /* SELECT CONCAT( DATE( jtime ) , ' ', HOUR( jtime ) ) AS vdate, no, humi FROM iot_raw WHERE dong_no = '31' GROUP BY CONCAT( DATE( jtime ) , ' ', HOUR( jtime ) ) ORDER BY jtime DESC */ /* $result_time_base=mysql_query("select date(jtime) as vdate, no, humi from iot_raw where dong_no='$sel_dong_no' group by date(jtime) order by date(jtime) desc limit $v_offset, 12 ") or die(); while($rs_time_base=mysql_fetch_array($result_time_base)) { $arr_base_time[]=$rs_time_base[vdate]; $arr_base_time2[]="'".date('m.d',strtotime($rs_time_base[vdate]))."'"; } */ $result_time_base=mysql_query("select jdate, no, humi from iot_date where dong_no='$sel_dong_no' group by jdate order by jdate desc limit $v_offset, 12 ") or die(); while($rs_time_base=mysql_fetch_array($result_time_base)) { $arr_base_time[]=$rs_time_base[jdate]; $arr_base_time2[]="'".date('m.d',strtotime($rs_time_base[jdate]))."'"; } krsort ( $arr_base_time2 ); $arr_str_base_time=implode(",",$arr_base_time2); //echo $arr_str_base_time."\n\n"; foreach($arr_sen_pos as $ak => $av) { foreach($arr_base_time as $tk => $tv) { $rs_data=RS("select ROUND(temp,1) as tem, ROUND(humi,1) as hum from iot_date where sensor_no='{$arr_sen_no[$ak]}' and jdate='$tv' "); if($rs_data[tem]) { array_push($arr_sen_data[$ak],$rs_data[tem]); } else { array_push($arr_sen_data[$ak],0); } if($rs_data[hum]) { array_push($arr_sen_data2[$ak],$rs_data[hum]); } else { array_push($arr_sen_data2[$ak],0); } } krsort ( $arr_sen_data[$ak] ); krsort ( $arr_sen_data2[$ak] ); //krsort ( $arr_sen_time[$ak] ); $arr_sen_str_data[$ak]=implode(",",$arr_sen_data[$ak]); $arr_sen_str_data2[$ak]=implode(",",$arr_sen_data2[$ak]); //echo $arr_sen_str_data[$ak]."\n\n"; } $t_page=1000000; } else if($sel_mode==5) { $arr_color=array("0"=>"#ff8080","1"=>"#ff0000","2"=>"#80ff80","3"=>"#0080ff","4"=>"#8080ff","5"=>"#000000","6"=>"#8000ff","7"=>"#808000","8"=>"#c0c0c0","9"=>"#6666ff","10"=>"#33ffcc","11"=>"#99cc66","12"=>"#00ff33","13"=>"#00cc00"); $result_sens=mysql_query("select * from farm_sensor where dong_no='$sel_dong_no' and sensor_type='1' group by pos_no order by pos_no asc ") or die(); $arr_sen_pos=array(); $arr_sen_no=array(); $arr_sen_name=array(); $arr_sen_color=array(); $arr_sen_data=array(); $arr_sen_data2=array(); $arr_sen_str_data=array(); $arr_sen_str_data2=array(); $arr_sen_str_time=array(); $arr_base_time=array(); $arr_base_time2=array(); $c=0; while($rs_sens=mysql_fetch_array($result_sens)) { $arr_sen_pos[$rs_sens[pos_no]]=array(); $arr_sen_no[$rs_sens[pos_no]]=$rs_sens[no]; $arr_sen_color[$c]="'".$arr_color[$c]."'"; $arr_sen_data[$rs_sens[pos_no]]=array(); $arr_sen_data2[$rs_sens[pos_no]]=array(); $arr_sen_time[$rs_sens[pos_no]]=array(); $arr_sen_name[$rs_sens[pos_no]]=$rs_sens[pos_no]; $arr_sen_str_data[$rs_sens[pos_no]]=array(); $arr_sen_str_data2[$rs_sens[pos_no]]=array(); $arr_sen_str_time[$rs_sens[pos_no]]=array(); $c++; } $arr_str_color=implode(",",$arr_sen_color); if(!$c_page) {$c_page=1;} $v_offset=($c_page-1)*12; if($v_offset<0) {$v_offset=0;} /* SELECT CONCAT( DATE( jtime ) , ' ', HOUR( jtime ) ) AS vdate, no, humi FROM iot_raw WHERE dong_no = '31' GROUP BY CONCAT( DATE( jtime ) , ' ', HOUR( jtime ) ) ORDER BY jtime DESC */ /* $result_time_base=mysql_query("select concat(date(jtime),' ',LPAD(hour(jtime),2,'0')) as vdate, no, humi from iot_raw where dong_no='$sel_dong_no' group by concat(date(jtime),' ',LPAD(hour(jtime),2,'0')) order by jtime desc limit $v_offset, 12 ") or die(); while($rs_time_base=mysql_fetch_array($result_time_base)) { $arr_base_time[]=$rs_time_base[vdate]; $exp_time=explode(" ",$rs_time_base[vdate]); $exp_tt=explode("-",$exp_time[0]); $arr_base_time2[]="'".$exp_tt[1].".".$exp_tt[2]." ".$exp_time[1]."시"."'"; } */ $result_time_base=mysql_query("select jdate, jhour, concat(jdate,' ',jhour) as vdate from iot_hour where dong_no='$sel_dong_no' group by concat(jdate,' ',jhour) order by concat(jdate,' ',jhour) desc limit $v_offset, 12 ") or die(); while($rs_time_base=mysql_fetch_array($result_time_base)) { $arr_base_time[]=$rs_time_base[vdate]; $arr_base_time2[]="'".date('m-d',strtotime($rs_time_base[jdate]))." ".$rs_time_base[jhour]."시"."'"; } krsort ( $arr_base_time2 ); $arr_str_base_time=implode(",",$arr_base_time2); //echo $arr_str_base_time."\n\n"; foreach($arr_sen_pos as $ak => $av) { foreach($arr_base_time as $tk => $tv) { //echo "select max(bat) as battery from iot_raw where sensor_no='{$arr_sen_no[$ak]}' and concat(date(jtime),' ',LPAD(hour(jtime),2,'0'))='$tv' \n\n"; $exp_time=explode(" ",$tv); //$rs_data=RS("select max(bat) as battery from iot_raw where sensor_no='{$arr_sen_no[$ak]}' and concat(date(jtime),' ',LPAD(hour(jtime),2,'0'))='$tv' "); //echo "select max(bat) as battery from iot_raw where sensor_no='{$arr_sen_no[$ak]}' and date(jtime)='{$exp_time[0]}' and LPAD(hour(jtime),2,'0'))='{$exp_time[1]}' <br>"; $rs_data=RS("select max(bat) as battery from iot_hour where sensor_no='{$arr_sen_no[$ak]}' and concat(jdate,' ',jhour)='$tv' "); if($rs_data[battery]) { array_push($arr_sen_data[$ak],$rs_data[battery]); } else { array_push($arr_sen_data[$ak],0); } } krsort ( $arr_sen_data[$ak] ); //krsort ( $arr_sen_time[$ak] ); $arr_sen_str_data[$ak]=implode(",",$arr_sen_data[$ak]); //echo $arr_sen_str_data[$ak]."\n\n"; } $t_page=1000000; } $prev_page=$c_page > 1 ? $c_page -1 : $c_page; $next_page=$c_page < $t_page ? $c_page + 1 : $c_page; /* $query="select * from bro_cc_sise where type='poultry' "; if($sub_query) {$query.=$sub_query;} $limit=$v_num; $query.=" order by no desc limit $offset, $limit "; //echo $query; $result=mysql_query($query) or die(mysql_error()); $arr=array(); $arr['a']=array(); $arr['b']=array(); $arr['c']=array(); $arr['d']=array(); $arr['date']=array(); while($rs=mysql_fetch_array($result)) { array_push($arr['a'],$rs[v1]); array_push($arr['b'],$rs[v2]); array_push($arr['c'],$rs[v3]); array_push($arr['d'],$rs[v4]); array_push($arr['date'],"'".date('m.d',strtotime($rs[jdate]))."'"); } krsort ( $arr['a'] ); krsort ( $arr['b'] ); krsort ( $arr['c'] ); krsort ( $arr['date'] ); $str_a=implode(",",$arr['a']); $str_b=implode(",",$arr['b']); $str_c=implode(",",$arr['c']); $str_d=implode(",",$arr['d']); $str_date=implode(",",$arr['date']); $prev_page=$c_page > 1 ? $c_page -1 : $c_page; $next_page=$c_page < $t_page ? $c_page + 1 : $c_page; */ ?> <!DOCTYPE html> <html lang="en" class="default-style layout-navbar-fixed layout-fixed-offcanvas"> <head> <title><?=$_TITLE?></title> <meta charset="utf-8"> <meta http-equiv="x-ua-compatible" content="IE=edge,chrome=1"> <meta name="description" content=""> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0"> <link rel="icon" type="image/x-icon" href="favicon.ico"> <link href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,500,500i,700,700i,900" rel="stylesheet"> <!-- Icon fonts --> <link rel="stylesheet" href="assets/vendor/fonts/fontawesome.css"> <link rel="stylesheet" href="assets/vendor/fonts/ionicons.css"> <link rel="stylesheet" href="assets/vendor/fonts/linearicons.css"> <link rel="stylesheet" href="assets/vendor/fonts/open-iconic.css"> <link rel="stylesheet" href="assets/vendor/fonts/pe-icon-7-stroke.css"> <!-- Core stylesheets --> <link rel="stylesheet" href="assets/vendor/css/rtl/bootstrap.css" class="theme-settings-bootstrap-css"> <link rel="stylesheet" href="assets/vendor/css/rtl/appwork.css" class="theme-settings-appwork-css"> <link rel="stylesheet" href="assets/vendor/css/rtl/theme-corporate.css" class="theme-settings-theme-css"> <link rel="stylesheet" href="assets/vendor/css/rtl/colors.css" class="theme-settings-colors-css"> <link rel="stylesheet" href="assets/vendor/css/rtl/uikit.css"> <link rel="stylesheet" href="assets/css/demo.css"> <script src="assets/vendor/js/material-ripple.js"></script> <script src="assets/vendor/js/layout-helpers.js"></script> <link rel="stylesheet" href="assets/vendor/libs/bootstrap-select/bootstrap-select.css"> <link rel="stylesheet" href="assets/vendor/libs/bootstrap-multiselect/bootstrap-multiselect.css"> <link rel="stylesheet" href="assets/vendor/libs/select2/select2.css"> <!-- Core scripts --> <script src="assets/vendor/js/pace.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <!-- Libs --> <link rel="stylesheet" href="assets/vendor/libs/perfect-scrollbar/perfect-scrollbar.css"> <link rel="stylesheet" href="assets/vendor/libs/bootstrap-datepicker/bootstrap-datepicker.css"> <link rel="stylesheet" href="assets/vendor/libs/c3/c3.css"> <link rel="stylesheet" href="assets/vendor/libs/ladda/ladda.css"> <script src="assets/jquery.number.js"></script> </head> <body> <div class="page-loader"> <div class="bg-primary"></div> </div> <!-- Layout wrapper --> <div class="layout-wrapper layout-2"> <div class="layout-inner"> <!-- Layout sidenav --> <?include_once("inc_sidenav.php");?> <!-- / Layout sidenav --> <!-- Layout container --> <div class="layout-container"> <!-- Layout navbar --> <?include_once("inc_navbar.php");?> <!-- / Layout navbar --> <!-- Layout content --> <div class="layout-content"> <!-- Content --> <div class="container-fluid flex-grow-1 container-p-y"> <h4 class="font-weight-bold py-1 mb-4"> <span class="text-muted font-weight-light"><a href='farm_home.php'>HOME</a> / <a href='farm_iot_menu.php'>IoT</a> /</span> 그래프 </h4> <div id="sidenav-2" class="sidenav sidenav-horizontal bg-dark mb-4"> <ul class="sidenav-inner"> <? foreach($arr_dong as $ak => $av) {?> <li class="sidenav-item<?if($sel_dong_no==$av->dong_no) {?> active<?}?>"> <a href="farm_iot_graph.php?sel_dong_no=<?=$av->dong_no?>&sel_mode=<?=$sel_mode?>" class="sidenav-link"> <i class="sidenav-icon ion ion-md-pie"></i> <div><?=$av->dong_name?></div> </a> </li> <?}?> </ul> </div> <ul id="gallery-filter" class="nav nav-tabs tabs-alt mb-4" > <li class="nav-item"> <a class="nav-link <?if($sel_mode==1) {?>active<?}?>" onclick="location.href='farm_iot_graph.php?sel_dong_no=<?=$sel_dong_no?>&sel_mode=1'">센서별</a> </li> <li class="nav-item"> <a class="nav-link <?if($sel_mode==2) {?>active<?}?>" onclick="location.href='farm_iot_graph.php?sel_dong_no=<?=$sel_dong_no?>&sel_mode=2'">통합챠트</a> </li> <!-- <li class="nav-item"> <a class="nav-link <?if($sel_mode==3) {?>active<?}?>" onclick="location.href='farm_iot_graph.php?sel_dong_no=<?=$sel_dong_no?>&sel_mode=3'">시간평균</a> </li> <li class="nav-item"> <a class="nav-link <?if($sel_mode==4) {?>active<?}?>" onclick="location.href='farm_iot_graph.php?sel_dong_no=<?=$sel_dong_no?>&sel_mode=4'">일간평균</a> </li> <li class="nav-item"> <a class="nav-link <?if($sel_mode==5) {?>active<?}?>" onclick="location.href='farm_iot_graph.php?sel_dong_no=<?=$sel_dong_no?>&sel_mode=5'">배터리잔량(%)</a> </li> --> </ul> <? if($sel_mode==1) {?> <div class="demo-vertical-spacing-lg"> <? foreach($arr_sen_name as $ak => $av) {?> <div id="c3-graph<?=$ak?>" class="mt-2 mb-1" style="height: 250px;border:1px #dddddd dashed;padding-right:10px"></div> <?}?> </div> <?} else if($sel_mode==2) { ?> <div id="c3-graph1" class="mt-2 mb-1" style="height: 250px;border:1px #dddddd dashed;padding-right:10px"></div> <div id="c3-graph2" class="mt-2 mb-1" style="height: 250px;border:1px #dddddd dashed;padding-right:10px"></div> <? } else if($sel_mode==3) { ?> <div id="c3-graph1" class="mt-2 mb-1" style="height: 250px;border:1px #dddddd dashed;padding-right:10px"></div> <div id="c3-graph2" class="mt-2 mb-1" style="height: 250px;border:1px #dddddd dashed;padding-right:10px"></div> <? } else if($sel_mode==4) { ?> <div id="c3-graph1" class="mt-2 mb-1" style="height: 250px;border:1px #dddddd dashed;padding-right:10px"></div> <div id="c3-graph2" class="mt-2 mb-1" style="height: 250px;border:1px #dddddd dashed;padding-right:10px"></div> <? } else if($sel_mode==5) { ?> <div id="c3-graph1" class="mt-2 mb-1" style="height: 250px;border:1px #dddddd dashed;padding-right:10px"></div> <? } ?> <div class="card-footer d-flex justify-content-between align-items-center bg-300 border-top-0"> <button class="btn btn-success ladda-button" type="button" data-style="slide-left" onclick="location.href='farm_iot_graph.php?c_page=<?=$next_page?>&sel_dong_no=<?=$sel_dong_no?>&sel_mode=<?=$sel_mode?>'">← 이전시간</button> <button class="btn btn-success ladda-button" type="button" data-style="slide-right" onclick="location.href='farm_iot_graph.php?c_page=<?=$prev_page?>&sel_dong_no=<?=$sel_dong_no?>&sel_mode=<?=$sel_mode?>'">다음시간 →</button> </div> <!-- / Form --> </div> <div class="card-footer d-flex justify-content-between align-items-center bg-200 border-top-0"> <button class="btn btn-outline border-2" type="button" onclick="history.back()">← 뒤로</button> </div> <!-- / Content --> <!-- Layout footer --> <?include_once("inc_footer.php");?> <!-- / Layout footer --> </div> <!-- Layout content --> </div> <!-- / Layout container --> </div> <!-- Overlay --> <div class="layout-overlay layout-sidenav-toggle"></div> </div> <!-- / Layout wrapper --> <!-- Core scripts --> <script src="assets/vendor/libs/popper/popper.js"></script> <script src="assets/vendor/js/bootstrap.js"></script> <script src="assets/vendor/js/sidenav.js"></script> <!-- Libs --> <script src="assets/vendor/libs/perfect-scrollbar/perfect-scrollbar.js"></script> <!-- Demo --> <script src="assets/js/demo.js"></script> <!-- Libs --> <script src="assets/vendor/libs/perfect-scrollbar/perfect-scrollbar.js"></script> <script src="assets/vendor/libs/bootstrap-select/bootstrap-select.js"></script> <script src="assets/vendor/libs/bootstrap-multiselect/bootstrap-multiselect.js"></script> <script src="assets/vendor/libs/select2/select2.js"></script> <script src="assets/vendor/libs/bootstrap-tagsinput/bootstrap-tagsinput.js"></script> <!-- Demo --> <script src="assets/js/forms_selects.js"></script> <script src="assets/vendor/libs/bootbox/bootbox.js"></script> <script src="assets/vendor/libs/d3/d3.js"></script> <script src="assets/vendor/libs/c3/c3.js"></script> <!-- Libs --> <script src="assets/vendor/libs/perfect-scrollbar/perfect-scrollbar.js"></script> <script src="assets/vendor/js/sidenav.js"></script> <script src="assets/vendor/libs/blueimp-gallery/gallery.js"></script> <script src="assets/vendor/libs/blueimp-gallery/gallery-fullscreen.js"></script> <script src="assets/vendor/libs/blueimp-gallery/gallery-indicator.js"></script> <script src="assets/vendor/libs/masonry/masonry.js"></script> <script src="assets/js/pages_gallery.js"></script> <!-- Demo --> <script src="assets/js/ui_sidenav.js"></script> <script src="assets/vendor/libs/spin/spin.js"></script> <script src="assets/vendor/libs/ladda/ladda.js"></script> <script src="assets/js/misc_ladda.js"></script> </body> </html> <script> <? if($sel_mode==1) { foreach($arr_senno as $ak => $av) { ?> c3.generate({ bindto: '#c3-graph<?=$ak?>', padding: { right: 20, }, title: { text: '<?=$arr_sen_name[$ak]?>' }, point: { show: false }, color: { pattern: [ '#00BCD4','#607D8B'] }, data: { columns: [ [ '온도', <?=$arr_sen_str_data[$ak]?> ], [ '습도', <?=$arr_sen_str_data2[$ak]?> ] ], }, axis: { x: { type: 'category', tick: { count : 8, culling: { max: 4 // the number of tick texts will be adjusted to less than this value }, rotate: 0, multiline: false // for normal axis, default on // for category axis, default off }, categories: [<?=$arr_sen_str_time[$ak]?>] } }, /* subchart: { show: true } */ }); <? } } else if($sel_mode==2) { ?> c3.generate({ bindto: '#c3-graph1', padding: { right: 20, }, title: { text: '온도' }, point: { show: false }, color: { pattern: [ <?=$arr_str_color?>] }, data: { columns: [ <? foreach($arr_sen_name as $ak => $av) { ?>[ '<?=$ak?>', <?=$arr_sen_str_data[$ak]?> ],<? } ?> ], }, axis: { x: { type: 'category', tick: { count : 8, culling: { max: 4 // the number of tick texts will be adjusted to less than this value }, rotate: 0, multiline: false // for normal axis, default on // for category axis, default off }, categories: [<?=$arr_sen_str_time[$ak]?>] } }, }); //var ak='<?=$ak?>'; c3.generate({ bindto: '#c3-graph2', padding: { right: 20, }, title: { text: '습도' }, point: { show: false }, color: { pattern: [ <?=$arr_str_color?>] }, data: { columns: [ <? foreach($arr_sen_name as $ak => $av) { ?>[ '<?=$ak?>', <?=$arr_sen_str_data2[$ak]?> ],<? } ?> ], }, axis: { x: { type: 'category', tick: { count : 8, culling: { max: 4 // the number of tick texts will be adjusted to less than this value }, rotate: 0, multiline: false // for normal axis, default on // for category axis, default off }, categories: [<?=$arr_sen_str_time[$ak]?>] } }, }); <? } else if($sel_mode==3) { ?> c3.generate({ bindto: '#c3-graph1', padding: { right: 20, }, title: { text: '온도' }, point: { show: false }, color: { pattern: [ <?=$arr_str_color?>] }, data: { columns: [ <? foreach($arr_sen_name as $ak => $av) { ?>[ '<?=$ak?>', <?=$arr_sen_str_data[$ak]?> ],<? } ?> ], }, axis: { x: { type: 'category', tick: { //count : 8, culling: { max: 12 // the number of tick texts will be adjusted to less than this value }, rotate: 45, multiline: false // for normal axis, default on // for category axis, default off }, categories: [<?=$arr_str_base_time?>] } }, }); c3.generate({ bindto: '#c3-graph2', padding: { right: 20, }, title: { text: '습도' }, point: { show: false }, color: { pattern: [ <?=$arr_str_color?>] }, data: { columns: [ <? foreach($arr_sen_name as $ak => $av) { ?>[ '<?=$ak?>', <?=$arr_sen_str_data2[$ak]?> ],<? } ?> ], }, axis: { x: { type: 'category', tick: { //count : 8, culling: { max: 12 // the number of tick texts will be adjusted to less than this value }, rotate: 45, multiline: false // for normal axis, default on // for category axis, default off }, categories: [<?=$arr_str_base_time?>] } }, }); <? } else if($sel_mode==4) { ?> c3.generate({ bindto: '#c3-graph1', padding: { right: 20, }, title: { text: '온도' }, point: { show: false }, color: { pattern: [ <?=$arr_str_color?>] }, data: { columns: [ <? foreach($arr_sen_name as $ak => $av) { ?>[ '<?=$ak?>', <?=$arr_sen_str_data[$ak]?> ],<? } ?> ], }, axis: { x: { type: 'category', tick: { //count : 8, culling: { max: 12 // the number of tick texts will be adjusted to less than this value }, rotate: 45, multiline: false // for normal axis, default on // for category axis, default off }, categories: [<?=$arr_str_base_time?>] } }, }); c3.generate({ bindto: '#c3-graph2', padding: { right: 20, }, title: { text: '습도' }, point: { show: false }, color: { pattern: [ <?=$arr_str_color?>] }, data: { columns: [ <? foreach($arr_sen_name as $ak => $av) { ?>[ '<?=$ak?>', <?=$arr_sen_str_data2[$ak]?> ],<? } ?> ], }, axis: { x: { type: 'category', tick: { //count : 8, culling: { max: 12 // the number of tick texts will be adjusted to less than this value }, rotate: 45, multiline: false // for normal axis, default on // for category axis, default off }, categories: [<?=$arr_str_base_time?>] } }, }); <? } else if($sel_mode==5) { ?> c3.generate({ bindto: '#c3-graph1', padding: { right: 20, }, title: { text: '배터리' }, point: { show: false }, color: { pattern: [ <?=$arr_str_color?>] }, data: { columns: [ <? foreach($arr_sen_name as $ak => $av) { ?>[ '<?=$ak?>', <?=$arr_sen_str_data[$ak]?> ],<? } ?> ], }, axis: { x: { type: 'category', tick: { //count : 8, culling: { max: 12 // the number of tick texts will be adjusted to less than this value }, rotate: 45, multiline: false // for normal axis, default on // for category axis, default off }, categories: [<?=$arr_str_base_time?>] } }, }); <? } ?> /* zoom: { enabled: true, rescale: true, type: 'drag', onzoom: function (domain) { console.log("zoom", domain); } }, */ /* c3.generate({ bindto: '#c3-graph2', color: { pattern: [ '#00BCD4' ] }, data: { columns: [ [ '병아리', <?=$str_d?> ] ], }, axis: { x: { type: 'category', categories: [<?=$str_date?>] } } }); */ </script>