Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- // Configuration -------------------
- require_once('./config.php');
- require_once('./functions.php');
- // Get URL data
- //$apikey = filter_input( INPUT_GET, 'apikey', FILTER_SANITIZE_URL ); // Get the URL thingy
- $node_id_strIN = filter_input( INPUT_GET, 'nodeid', FILTER_SANITIZE_URL );
- $addressIN= filter_input( INPUT_GET, 'address', FILTER_SANITIZE_URL ); // Get the URL thingy
- $deviceIN= filter_input( INPUT_GET, 'device', FILTER_SANITIZE_URL ); // Get the URL thingy
- $parameterIN= filter_input( INPUT_GET, 'parameter', FILTER_SANITIZE_URL ); // Get the URL thingy
- $charttypeIN= filter_input( INPUT_GET, 'charttype', FILTER_SANITIZE_URL );
- //Get the limit
- $limitIN= filter_input( INPUT_GET, 'limit', FILTER_SANITIZE_URL );
- $node_id_str = preg_replace("/[^A-Za-z0-9 ]/", '', $node_id_strIN);
- $address = preg_replace("/[^A-Za-z0-9 ]/", '', $addressIN );
- $device = preg_replace("/[^A-Za-z0-9 ]/", '', $deviceIN );
- $parameter = preg_replace("/[^A-Za-z0-9 ]/", '', $parameterIN );
- $charttype= preg_replace("/[^A-Za-z0-9 ]/", '', $charttypeIN);
- $limit= preg_replace("/[^A-Za-z0-9 ]/", '', $limitIN);
- if ($limit<=0) $limit = 1000;
- // Create connection
- $conn = new mysqli($mysql_host,$mysql_username,$mysql_password,$mysql_dbname);
- // Check connection
- if ($conn->connect_error)
- {
- die("Connection failed: " . $conn->connect_error);
- }
- //$sql = 'SELECT * FROM nodes WHERE ApiKey="'.$apikey.'"';
- $node_id = intval($node_id_str);
- $sql = 'SELECT * FROM nodes WHERE ID="'.$node_id.'"';
- $result = $conn->query($sql);
- if ($result->num_rows > 0)
- {
- // output data
- $row = mysqli_fetch_assoc($result);
- $node_ident = $row["ID"]; // numeric unique identifier
- //$node_id = $row["NodeID"];
- $node_desc = $row["Description"];
- $adr_val = intval($address);
- $sql = sprintf('SELECT Timestamp, Value FROM dogodki WHERE Node="%d" AND Address="%d" AND Device="%s" AND Parameter="%s" ORDER BY Timestamp DESC LIMIT %d',$node_ident, $adr_val, $device, $parameter, $limit);
- //"VALUES (NULL ,CURRENT_TIMESTAMP , '%d', '%s', '%s', '%s', '%s');",$node_ident,$address,$device,$parameter,$value);
- $result = $conn->query($sql);
- $rownum=1;
- /* Process results */
- if (mysqli_num_rows($result) > 0)
- {
- // output data of each row
- $rows = array();
- $jsonarray = array();
- while($row = mysqli_fetch_assoc($result))
- {
- $jsonarray[] = $row;
- //$jsondate = date("Y,m,d,G,i,s", strtotime($row["Timestamp"]));
- //var_dump($jsondate);
- $rowdate = date_parse ( $row["Timestamp"]);
- $year = $rowdate['year'];
- $month = $rowdate['month']-1;
- $day = $rowdate['day'];
- $hour = $rowdate['hour'];
- $minute = $rowdate['minute'];
- $second = $rowdate['second'];
- $jsnodate = sprintf("%d,%d,%d,%d,%d,%d" , $year , $month , $day , $hour , $minute , $second);
- //$jsnodate = $year.",".$month.",".$day.",".$hour.",".$minute.",".$second;
- //var_dump($jsnodate );
- //$jsondate = date("Y,m,d,G,i,s", strtotime($strjsnodate));
- $y = floatval($row["Value"]);
- $rows[] = array("Date.UTC(" . $jsnodate . ")", $y);
- if ($rownum==1)
- {
- $rownum = 0;
- $lasttimestamp = sprintf("%d.%d.%d %d:%d:%d" , $day , $month+1 , $year , $hour , $minute , $second);
- $lastreadout = $y;
- }
- }
- } else {
- echo "0 results";
- }
- } else
- {
- echo "0 IDs";
- }
- /* Create response */
- $json = json_encode($jsonarray);
- $johanson = json_encode(array_reverse($rows), JSON_PRETTY_PRINT);
- $correct_json_for_chart = str_replace('"', '', $johanson); // chart yoom ne dela, ce je DESC order!!!
- $conn->close();
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement