source: trunk/add.php

Last change on this file was 96, checked in by chronos, 3 weeks ago
  • Modfied: Allow to add measurements with different min, avg and max values.
File size: 2.1 KB
Line 
1<?php
2
3include_once('Application/Core.php');
4
5$Core = new Core();
6$Core->UseSession = false;
7$Core->ShowPage = false;
8$Core->Run();
9
10$AddedValues = 0;
11
12$Time = time();
13if (array_key_exists('Time', $_GET)) $Time = $_GET['Time'] * 1;
14
15// Try to load single value
16if (array_key_exists('MeasureId', $_GET))
17{
18 $MeasureId = $_GET['MeasureId'] * 1;
19 if (array_key_exists('Avg', $_GET)) $Avg = $_GET['Avg'] * 1;
20 else if (array_key_exists('Value', $_GET)) $Avg = $_GET['Value'] * 1; // For back compatibility
21 else die('Missing avg value parameter.');
22
23 if (array_key_exists('Min', $_GET)) $Min = $_GET['Min'] * 1; else $Min = $Avg;
24 if (array_key_exists('Max', $_GET)) $Max = $_GET['Max'] * 1; else $Max = $Avg;
25 AddValue($MeasureId, $Time, $Min, $Avg, $Max);
26 $AddedValues++;
27}
28
29// Try to load multiple values
30$I = 1;
31while (array_key_exists('MeasureId'.$I, $_GET) and array_key_exists('Value'.$I, $_GET))
32{
33 $MeasureId = $_GET['MeasureId'.$I] * 1;
34 if (array_key_exists('Avg'.$I, $_GET)) $Avg = $_GET['Avg'.$I] * 1;
35 else if (array_key_exists('Value'.$I, $_GET)) $Avg = $_GET['Value'.$I] * 1; // For back compatibility
36 else die('Missing avg value parameter.');
37
38 if (array_key_exists('Min'.$I, $_GET)) $Min = $_GET['Min'.$I] * 1; else $Min = $Avg;
39 if (array_key_exists('Max'.$I, $_GET)) $Max = $_GET['Max'.$I] * 1; else $Max = $Avg;
40 AddValue($MeasureId, $Time, $Min, $Avg, $Max);
41 $AddedValues++;
42 $I++;
43}
44
45if ($AddedValues == 0) echo('Nebyly zadány potřebné parametry MeasureId a Value.'."\n");
46
47function AddValue(int $MeasureId, int $Time, float $Min, float $Avg, float $Max): void
48{
49 global $Core;
50
51 $Measure = new Measure($Core->Database);
52 $Measure->Load($MeasureId);
53 $HostName = gethostbyaddr($_SERVER['REMOTE_ADDR']);
54 if (($HostName == $Measure->Data['PermissionAdd']) or
55 ($_SERVER['REMOTE_ADDR'] == gethostbyname($Measure->Data['PermissionAdd'])))
56 {
57 $Measure->AddValue($Time, $Min, $Avg, $Max);
58 echo('Hodnota avg: '.$Avg.', min: '.$Min.', max: '.$Max.' uložena'."\n");
59 } else echo('Nemáte oprávnění k aktualizaci zadané veličiny!<br>'.
60 'Vaše adresa: '.$HostName.'('.$_SERVER['REMOTE_ADDR'].')'."\n");
61}
Note: See TracBrowser for help on using the repository browser.