342.4) {return "N";} elseif ($degrees > 319.9) {return "NNW";} elseif ($degrees > 297.4) {return "NW";} elseif ($degrees > 274.9) {return "WNW";} elseif ($degrees > 252.4) {return "W";} elseif ($degrees > 229.9) {return "WSW";} elseif ($degrees > 207.4) {return "SW";} elseif ($degrees > 184.9) {return "SSW";} elseif ($degrees > 152.4) {return "S";} elseif ($degrees > 139.9) {return "SSE";} elseif ($degrees > 117.4) {return "SE";} elseif ($degrees > 94.9) {return "ESE";} elseif ($degrees > 72.4) {return "E";} elseif ($degrees > 49.9) {return "ENE";} elseif ($degrees > 27.4) {return "NE";} else {return "N";} } // assegnazione global variables //corrispondenza con db wugraphs //corrispondenza con db mysql swpi $ultimamisura = date_create($_POST['last_measure_time']); $ultimoidx = date_create($_POST['idx']); //correzione offset winddir $globvar_wind_dir = (round($_POST['wind_dir'],2))+$winddir_offset; if ($dbtype == 'WU') {$globfield_wind_dir = 'wind_direction' ;} elseif ($dbtype == 'SW') {$globfield_wind_dir = 'WIND_DIR' ;} #wind_direction #WIND_DIR if ($globvar_wind_dir < 0 ) { $globvar_wind_dir = (360 + $globvar_wind_dir); } else if ($globvar_wind_dir > 360 ) { $globvar_wind_dir = ($globvar_wind_dir - 360 ); } $globvar_wind_dir_code = degtotxtdb($globvar_wind_dir); if ($dbtype == 'WU') {$globfield_wind_dir_code = 'NOFIELD' ;} elseif ($dbtype == 'SW') {$globfield_wind_dir_code = 'WINDIR_CODE' ;} #- #WINDIR_CODE //leggo altre variabili $globvar_date = date_format($ultimamisura, 'Y-m-d'); if ($dbtype == 'WU') {$globfield_date = 'date' ;} elseif ($dbtype == 'SW') {$globfield_date = 'NOFIELD' ;} #date #- $globvar_time = date_format($ultimamisura, 'H:i'); if ($dbtype == 'WU') {$globfield_time = 'time' ;} elseif ($dbtype == 'SW') {$globfield_time = 'NOFIELD' ;} #time #- $globvar_last_measure_time = $_POST['last_measure_time']; if ($dbtype == 'WU') {$globfield_last_measure_time ='datetime' ;} elseif ($dbtype == 'SW') {$globfield_last_measure_time = 'TIMESTAMP_LOCAL' ;} #datetime #TIMESTAMP_LOCAL $globvar_timestamp_idx =$_POST['idx']; if ($dbtype == 'WU') {$globfield_timestamp_idx = 'NOFIELD' ;} elseif ($dbtype == 'SW') {$globfield_timestamp_idx = 'TIMESTAMP_IDX' ;} #- #TIMESTAMP_IDX $globvar_hum_out = round($_POST['hum_out'],2); if ($dbtype == 'WU') {$globfield_hum_out = 'outdoor_humidity' ;} elseif ($dbtype == 'SW') {$globfield_hum_out = 'HUM' ;} #outdoor_humidity #HUM $globvar_temp_out = round($_POST['temp_out'],2); if ($dbtype == 'WU') {$globfield_temp_out = 'temperature' ;} elseif ($dbtype == 'SW') {$globfield_temp_out = 'TEMP' ;} #temperature #TEMP $globvar_rain_rate = round($_POST['rain_rate'],2); if ($dbtype == 'WU') {$globfield_rain = 'daily_rainfall' ;} elseif ($dbtype == 'SW') {$globfield_rain = 'RAIN' ;} #daily_rainfall #RAIN $globvar_rain = round($_POST['rain'],2); $globvar_rain_rate_24h = round($_POST['rain_rate_24h'],2); $globvar_rain_rate_1h = round($_POST['rain_rate_1h'],2); if ($dbtype == 'WU') {$globfield_rain_rate = 'rain_rate' ;} elseif ($dbtype == 'SW') {$globfield_rain_rate = 'RAIN_RATE' ;} #rain_rate #RAIN_RATE $globvar_wind_ave = round(($_POST['wind_ave']),2); if ($dbtype == 'WU') {$globfield_wind_ave = 'average_windspeed' ;} elseif ($dbtype == 'SW') {$globfield_wind_ave = 'WIND_AVE' ;} #average_windspeed #WIND_AVE $globvar_wind_dir_ave = round($_POST['wind_dir_ave'],0); if ($dbtype == 'WU') {$globfield_wind_dir_ave = 'NOFIELD' ;} elseif ($dbtype == 'SW') {$globfield_wind_dir_ave = 'WIND_DIR_AVE' ;} #- #WIN_DIR_AVE $globvar_wind_gust = round(($_POST['wind_gust']),2); if ($dbtype == 'WU') {$globfield_wind_gust = 'gust_windspeed' ;} elseif ($dbtype == 'SW') {$globfield_wind_gust = 'WIND_GUST' ;} #gust_windspeed #WIND_GUST $globvar_wind_daymin = round($_POST['winDayMin'],2); if ($dbtype == 'WU') {$globfield_wind_daymin = 'NOFIELD' ;} elseif ($dbtype == 'SW') {$globfield_wind_daymin = 'WIND_DAY_MIN' ;} #- #WIND_DAY_MIN $globvar_wind_daymax = round($_POST['winDayMax'],2); if ($dbtype == 'WU') {$globfield_wind_daymax = 'NOFIELD' ;} elseif ($dbtype == 'SW') {$globfield_wind_daymax = 'WIND_DAY_MAX' ;} #- #WIND_DAY_MAX $globvar_wind_dayGustMin = $_POST['winDayGustMin']; if ($dbtype == 'WU') {$globfield_wind_dayGustMin = 'NOFIELD' ;} elseif ($dbtype == 'SW') {$globfield_wind_dayGustMin = 'WIND_DAY_GUST_MIN' ;} #- #WIND_DAY_GUST_MIN $globvar_temp_in_dayMin = $_POST['TempInMin']; if ($dbtype == 'WU') {$globfield_temp_in_dayMin = 'NOFIELD' ;} elseif ($dbtype == 'SW') {$globfield_temp_in_dayMin = 'TEMP_IN_DAY_MIN' ;} #- #TEMP_IN_DAY_MIN $globvar_temp_in_dayMax = $_POST['TempInMax']; if ($dbtype == 'WU') {$globfield_temp_in_dayMax = 'NOFIELD' ;} elseif ($dbtype == 'SW') {$globfield_temp_in_dayMax = 'TEMP_IN_DAY_MAX' ;} #- #TEMP_IN_DAY_MAX $globvar_hum_in_dayMin = $_POST['UmInMin']; if ($dbtype == 'WU') {$globfield_hum_in_dayMin = 'NOFIELD' ;} elseif ($dbtype == 'SW') {$globfield_hum_in_dayMin = 'HUM_IN_DAY_MIN' ;} #- #HUM_IN_DAY_MIN $globvar_hum_in_dayMax = $_POST['UmInMax']; if ($dbtype == 'WU') {$globfield_hum_in_dayMax = 'NOFIELD' ;} elseif ($dbtype == 'SW') {$globfield_hum_in_dayMax = 'HUM_IN_DAY_MAX' ;} #- #HUM_IN_DAY_MAX $globvar_hum_out_dayMin = $_POST['UmOutMin']; if ($dbtype == 'WU') {$globfield_hum_out_dayMin = 'NOFIELD' ;} elseif ($dbtype == 'SW') {$globfield_hum_out_dayMin = 'HUM_OUT_DAY_MIN' ;} #- #HUM_OUT_DAY_MIN $globvar_hum_out_dayMax = $_POST['UmOutMax']; if ($dbtype == 'WU') {$globfield_hum_out_dayMax = 'NOFIELD' ;} elseif ($dbtype == 'SW') {$globfield_hum_out_dayMax = 'HUM_OUT_DAY_MAX' ;} #- #HUM_OUT_DAY_MAX $globvar_pressure_dayMax = $_POST['PressureMax']; if ($dbtype == 'WU') {$globfield_pressure_dayMax = 'NOFIELD' ;} elseif ($dbtype == 'SW') {$globfield_pressure_dayMax = 'PRESSURE_DAY_MAX' ;} #- #PRESSURE_DAY_MAX $globvar_pressure_dayMin = $_POST['PressureMin']; if ($dbtype == 'WU') {$globfield_pressure_dayMin = 'NOFIELD' ;} elseif ($dbtype == 'SW') {$globfield_pressure_dayMin = 'PRESSURE_DAY_MIN' ;} #- #PRESSURE_DAY_MIN $globvar_dew_point = round($_POST['dew_point'],2); if ($dbtype == 'WU') {$globfield_dew_point = 'dew_point_temperature' ;} elseif ($dbtype == 'SW') {$globfield_dew_point = 'DEW_POINT' ;} #dew_point_temperature #DEW_POINT $globvar_hum_in = round($_POST['hum_in'],2); if ($dbtype == 'WU') {$globfield_hum_in = 'indoor_humidity' ;} elseif ($dbtype == 'SW') {$globfield_hum_in = 'HUMINT' ;} #indoor_humidity #HUMINT $globvar_temp_in = round($_POST['temp_in'],2); if ($dbtype == 'WU') {$globfield_temp_in = 'indoor_temperature' ;} elseif ($dbtype == 'SW') {$globfield_temp_in = 'TEMPINT' ;} #indoor_temperature #TEMPINT $globvar_rel_pressure = round($_POST['rel_pressure'],2); if ($dbtype == 'WU') {$globfield_rel_pressure = 'barometer' ;} elseif ($dbtype == 'SW') {$globfield_rel_pressure = 'PRESSURE' ;} #barometer (relativa (assoluta abs)) #PRESSURE $globvar_TempOutMin = round($_POST['TempOutMin'],2); if ($dbtype == 'WU') {$globfield_TempOutMin = 'min_daily_temperature' ;} elseif ($dbtype == 'SW') {$globfield_TempOutMin = 'TEMP_OUT_DAY_MIN' ;} #min_daily_temperature #TEMP_OUT_DAY_MIN $globvar_TempOutMax = round($_POST['TempOutMax'],2); if ($dbtype == 'WU') {$globfield_TempOutMax = 'max_daily_temperature' ;} elseif ($dbtype == 'SW') {$globfield_TempOutMax = 'TEMP_OUT_DAY_MAX' ;} #max_daily_temperature` #TEMP_OUT_DAY_MAX $globvar_winDayGustMax = round(($_POST['winDayGustMax']),2);if ($dbtype == 'WU') {$globfield_winDayGustMax = 'max_gust_current_day' ;} elseif ($dbtype == 'SW') {$globfield_winDayGustMax = 'WIND_DAY_GUST_MAX' ;} #max_gust_current_day #WIND_DAY_GUST_MAX $globvar_wind_chill = round($_POST['wind_chill'],2); if ($dbtype == 'WU') {$globfield_wind_chill = 'current_windchill' ;} elseif ($dbtype == 'SW') {$globfield_wind_chill = 'WIND_CHILL' ;} #- #WIND_CHILL $globvar_temp_apparent = round($_POST['temp_apparent'],2); if ($dbtype == 'WU') {$globfield_temp_apparent = 'NOFIELD' ;} elseif ($dbtype == 'SW') {$globfield_temp_apparent = 'TEMP_APPARENT' ;} #- #TEMP_APPARENT $globvar_uvindex = round($_POST['uv'],4); if ($dbtype == 'WU') {$globfield_uvindex = 'davis_vp_uv' ;} elseif ($dbtype == 'SW') {$globfield_uvindex = 'UV_INDEX' ;} #davis_vp_uv #UV_INDEX $globvar_solar_rad = round($_POST['illuminance'],4); if ($dbtype == 'WU') {$globfield_solar_rad = 'actual_solar_reading' ;} elseif ($dbtype == 'SW') {$globfield_solar_rad = 'SOLAR_RAD' ;} #actual_solar_reading #SOLAR_RAD $globvar_stationid = $stationid; if ($dbtype == 'WU') {$globfield_stationid = 'station_id' ;} #station_id #- //adattamento per valori tabella WD/wugraphs null if ( !isset($globvar_hum_out) || $globvar_hum_out == "null" ) { if ($dbtype =='WU') {$globvar_hum_out = 0; } } if ( !isset($globvar_temp_out) || $globvar_temp_out == "null" ) { if ($dbtype =='WU') {$globvar_temp_out = 0; } } if ($globvar_rain == "null") { if ($dbtype =='WU') {$globvar_rain = 0; } } if ($globvar_rain_rate == "null") { if ($dbtype =='WU') {$globvar_rain_total = 0; } } if ($globvar_rain_rate_1h == "null") { if ($dbtype =='WU') {$globvar_rain_rate_1h = 0; } } if ($globvar_rain_rate_24h == "null") { if ($dbtype =='WU') {$globvar_rain_rate_24h = 0; } } if ($globvar_wind_dir == "null") { if ($dbtype =='WU') {$globvar_wind_dir = 0; } } if ($globvar_wind_ave == "null") { if ($dbtype =='WU') {$globvar_wind_ave = 0; } } if ($globvar_wind_gust == "null") { if ($dbtype =='WU') {$globvar_wind_gust = 0; } } if ( !isset($globvar_hum_in) || $globvar_hum_in == "null" ) { if ($dbtype =='WU') {$globvar_hum_in = 0; } } if ( !isset($globvar_temp_in) || $globvar_temp_in == "null" ) { if ($dbtype =='WU') {$globvar_temp_in = 0; } } if ( !isset($globvar_rel_pressure) || $globvar_rel_pressure == "null" ) { if ($dbtype =='WU') {$globvar_rel_pressure = 0; } } if ( !isset($globvar_TempOutMin) || $globvar_TempOutMin == "null" ) { if ($dbtype =='WU') {$globvar_TempOutMin = 0; } } if ( !isset($globvar_TempOutMax) || $globvar_TempOutMax == "null" ) { if ($dbtype =='WU') {$globvar_TempOutMax = 0; } } if ($globvar_winDayGustMax == "null") { if ($dbtype =='WU') {$globvar_winDayGustMax = 0; } } if ($globvar_uvindex == "null") { if ($dbtype =='WU') {$globvar_uvindex = 0; } } if ($globvar_solar_rad == "null") { if ($dbtype =='WU') {$globvar_solar_rad = 0; } } if ( !isset($globvar_wind_chill) || $globvar_wind_chill == "null" ) { if ($dbtype =='WU') {$globvar_wind_chill = 0; } } if ( !isset($globvar_dew_point) || $globvar_dew_point == "null" ) { if ($dbtype =='WU') {$globvar_dew_point = 0; } } //recupero ultime misurazioni da db mysql $con3 = mysql_connect($server,$user,$pwd); mysql_select_db($db); $ultimodatoDb = mysql_query("SELECT * FROM $tablename ORDER BY $globfield_last_measure_time DESC LIMIT 1"); $dblast_bar_out = mysql_result($ultimodatoDb,0,$globfield_rel_pressure); $dblast_temp_out = mysql_result($ultimodatoDb,0,$globfield_temp_out); $dblast_temp_in = mysql_result($ultimodatoDb,0,$globfield_temp_in); $dblast_hum_out = mysql_result($ultimodatoDb,0,$globfield_hum_out); $dblast_hum_in = mysql_result($ultimodatoDb,0,$globfield_hum_in); $dblast_windspd = mysql_result($ultimodatoDb,0,$globfield_wind_ave); $dblast_gust = mysql_result($ultimodatoDb,0,$globfield_wind_gust); $dblast_gustDaymax = mysql_result($ultimodatoDb,0,$globfield_winDayGustMax); $dblast_datetime = mysql_result($ultimodatoDb,0,$globfield_last_measure_time); //recupero info min/max da db mysql per creazione meteofile e confronto x correzione dati $dataoggi = date("Y-m-d"); //nota: inserire data ultima misura x visualizz ultimi dati con staz offline $dbdaymaxgust_wind_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_wind_gust DESC LIMIT 1"); $dbdaymingust_wind_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_wind_gust ASC LIMIT 1"); $dbdaymaxtemp_out_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_temp_out DESC LIMIT 1"); $dbdaymintemp_out_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_temp_out ASC LIMIT 1"); $dbdaymaxtemp_in_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_temp_in DESC LIMIT 1"); $dbdaymintemp_in_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_temp_in ASC LIMIT 1"); $dbdaymaxbaro_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_rel_pressure DESC LIMIT 1"); $dbdayminbaro_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_rel_pressure ASC LIMIT 1"); $dbdaymaxhum_out_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_hum_out DESC LIMIT 1"); $dbdayminhum_out_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_hum_out ASC LIMIT 1"); $dbdaymaxhum_in_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_hum_in DESC LIMIT 1"); $dbdayminhum_in_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_hum_in ASC LIMIT 1"); $dbdaymaxavg_wind_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_wind_ave DESC LIMIT 1"); $dbdayminavg_wind_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_wind_ave ASC LIMIT 1"); $dbdaymaxsolar_rad_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_solar_rad DESC LIMIT 1"); $dbdaymaxuvindex_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_uvindex DESC LIMIT 1"); $dbdaymaxdew_point_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_dew_point DESC LIMIT 1"); $dbdaymindew_point_query = mysql_query("SELECT * FROM $tablename WHERE date='$dataoggi' ORDER BY $globfield_dew_point ASC LIMIT 1"); //......assegnazione valori........... $dbdaymaxgust_wind = mysql_result($dbdaymaxgust_wind_query,0,$globfield_wind_gust); $dbdaymaxgust_wind_dir = mysql_result($dbdaymaxgust_wind_query,0,$globfield_wind_dir); $dbdaymaxgust_wind_time = date_format(date_create(mysql_result($dbdaymaxgust_wind_query,0,$globfield_last_measure_time)), 'H:i:s'); $dbdaymingust_wind = mysql_result($dbdaymingust_wind_query,0,$globfield_wind_gust); $dbdaymingust_wind_dir = mysql_result($dbdaymingust_wind_query,0,$globfield_wind_dir); $dbdaymingust_wind_time = date_format(date_create(mysql_result($dbdaymingust_wind_query,0,$globfield_last_measure_time)), 'H:i:s'); $dbdaymaxavg_wind = mysql_result($dbdaymaxavg_wind_query,0,$globfield_wind_ave); $dbdaymaxavg_wind_dir = mysql_result($dbdaymaxavg_wind_query,0,$globfield_wind_dir); $dbdaymaxavg_wind_time = date_format(date_create(mysql_result($dbdaymaxavg_wind_query,0,$globfield_last_measure_time)), 'H:i:s'); $dbdayminavg_wind = mysql_result($dbdayminavg_wind_query,0,$globfield_wind_ave); $dbdayminavg_wind_dir = mysql_result($dbdayminavg_wind_query,0,$globfield_wind_dir); $dbdayminavg_wind_time = date_format(date_create(mysql_result($dbdayminavg_wind_query,0,$globfield_last_measure_time)), 'H:i:s'); $dbdaymaxtemp_out = mysql_result($dbdaymaxtemp_out_query,0,$globfield_temp_out); $dbdaymaxtemp_out_time = date_format(date_create(mysql_result($dbdaymaxtemp_out_query,0,$globfield_last_measure_time)), 'H:i:s'); $dbdaymintemp_out = mysql_result($dbdaymintemp_out_query,0,$globfield_temp_out); $dbdaymintemp_out_time = date_format(date_create(mysql_result($dbdaymintemp_out_query,0,$globfield_last_measure_time)), 'H:i:s'); $dbdaymaxtemp_in = mysql_result($dbdaymaxtemp_in_query,0,$globfield_temp_in); $dbdaymaxtemp_in_time = date_format(date_create(mysql_result($dbdaymaxtemp_in_query,0,$globfield_last_measure_time)), 'H:i:s'); $dbdaymintemp_in = mysql_result($dbdaymintemp_in_query,0,$globfield_temp_in); $dbdaymintemp_in_time = date_format(date_create(mysql_result($dbdaymintemp_in_query,0,$globfield_last_measure_time)), 'H:i:s'); $dbdaymaxbaro = mysql_result($dbdaymaxbaro_query,0,$globfield_rel_pressure); $dbdaymaxbaro_time = date_format(date_create(mysql_result($dbdaymaxbaro_query,0,$globfield_last_measure_time)), 'H:i:s'); $dbdayminbaro = mysql_result($dbdayminbaro_query,0,$globfield_rel_pressure); $dbdayminbaro_time = date_format(date_create(mysql_result($dbdayminbaro_query,0,$globfield_last_measure_time)), 'H:i:s'); $dbdaymaxhum_out = mysql_result($dbdaymaxhum_out_query,0,$globfield_hum_out); $dbdaymaxhum_out_time = date_format(date_create(mysql_result($dbdaymaxhum_out_query,0,$globfield_last_measure_time)), 'H:i:s'); $dbdayminhum_out = mysql_result($dbdayminhum_out_query,0,$globfield_hum_out); $dbdayminhum_out_time = date_format(date_create(mysql_result($dbdayminhum_out_query,0,$globfield_last_measure_time)), 'H:i:s'); $dbdaymaxhum_in = mysql_result($dbdaymaxhum_in_query,0,$globfield_hum_in); $dbdaymaxhum_in_time = date_format(date_create(mysql_result($dbdaymaxhum_in_query,0,$globfield_last_measure_time)), 'H:i:s'); $dbdayminhum_in = mysql_result($dbdayminhum_in_query,0,$globfield_hum_in); $dbdayminhum_in_time = date_format(date_create(mysql_result($dbdayminhum_in_query,0,$globfield_last_measure_time)), 'H:i:s'); $dbdaymaxsolar_rad = mysql_result($dbdaymaxsolar_rad_query,0,$globfield_solar_rad); $dbdaymaxsolar_rad_time = date_format(date_create(mysql_result($dbdaymaxsolar_rad_query,0,$globfield_last_measure_time)), 'H:i:s'); $dbdaymaxuvindex = mysql_result($dbdaymaxuvindex_query,0,$globfield_uvindex); $dbdaymaxuvindex_time = date_format(date_create(mysql_result($dbdaymaxuvindex_query,0,$globfield_last_measure_time)), 'H:i:s'); $dbdaymindew_point = mysql_result($dbdaymindew_point_query,0,$globfield_dew_point); $dbdaymindew_point_time = date_format(date_create(mysql_result($dbdaymindew_point_query,0,$globfield_last_measure_time)), 'H:i:s'); $dbdaymaxdew_point = mysql_result($dbdaymaxdew_point_query,0,$globfield_dew_point); $dbdaymaxdew_point_time = date_format(date_create(mysql_result($dbdaymaxdew_point_query,0,$globfield_last_measure_time)), 'H:i:s'); mysql_close($con3); //timelapse if ($timelapse == 'True') { $compare="slideshow/compare_webcam.jpg"; $originale = $webcamimg; if ((date("Y/m/d H:i:s",filemtime($originale))) > date("Y/m/d H:i:s",filemtime($compare))){ $a=time(); $g=date('d',$a); $m=date('m',$a); $Y=date('Y',$a); $h=date('H',$a); $i=date('i',$a); $folder='slideshow/'.$Y.'-'.$m.'-'.$g; if (!is_dir($folder)) { mkdir($folder,0755); } $copia=$folder."/backup_webcam.jpg"; copy($originale,$copia); copy($originale,$compare); rename($folder.'/'.'backup_webcam.jpg',$folder.'/'.$Y.'-'.$m.'-'.$g.'_'.$h.'.'.$i.'.jpg'); } } //ricavo ritardo da ultimo aggiornamento function delta_tempo ($data_iniziale,$data_finale,$unita) { $data1 = strtotime($data_iniziale); $data2 = strtotime($data_finale); switch($unita) { case "m": $unita = 1/60; break; //MINUTI case "h": $unita = 1; break; //ORE case "g": $unita = 24; break; //GIORNI case "a": $unita = 8760; break; //ANNI } $differenza = (($data2-$data1)/3600)/$unita; return $differenza; } $actualdelay = round(delta_tempo($dblast_datetime,$globvar_last_measure_time,m),2); //ricava altre informazioni da meteo.txt generato da swpi if ($txtoutput == 'True'){ $sourcetxt = file_get_contents('meteo.txt'); $json_output = json_decode($sourcetxt, true); $globvar_station_name = '"'.$json_output[station_name].'"'; if ( is_numeric($json_output[location_latitude])) {$globvar_location_latitude = $json_output[location_latitude];} else {$globvar_location_latitude = 0;} if ( is_numeric($json_output[location_longitude])) {$globvar_location_longitude = $json_output[location_longitude];} else {$globvar_location_longitude = 0;} if ( is_numeric($json_output[location_altitude])) {$globvar_location_altitude = $json_output[location_altitude];} else {$globvar_location_altitude = 0;} if ( is_numeric($json_output[wind_trend])) {$globvar_wind_trend = $json_output[wind_trend];} else {$globvar_wind_trend = 0;} if ( is_numeric($json_output[wind_trend_limit])) {$globvar_wind_trend_limit = $json_output[wind_trend_limit];} else {$globvar_wind_trend_limit = 0;} if ( is_numeric($json_output[abs_pressure])) {$globvar_abs_pressure = $json_output[abs_pressure];} else {$globvar_abs_pressure = 0;} if ( is_numeric($json_output[rel_pressure])) {$globvar_rel_pressure = $json_output[rel_pressure];} else {$globvar_rel_pressure = 0;} if ( is_numeric($json_output[pressure_trend])) {$globvar_pressure_trend = $json_output[pressure_trend];} else {$globvar_pressure_trend = 0;} // if ( is_numeric($json_output[rain_rate_1h])) {$globvar_rain_rate_1h = $json_output[rain_rate_1h];} else {$globvar_rain_rate_1h = 0;} // if ( is_numeric($json_output[rain_rate_24h])) {$globvar_rain_rate_24h = $json_output[rain_rate_24h];} else {$globvar_rain_rate_24h = 0;} if ( is_numeric($json_output[cloud_base_altitude])) {$globvar_cloud_base_altitude = $json_output[cloud_base_altitude];} else {$globvar_cloud_base_altitude = 0;} if ( is_numeric($json_output[TempCPU])) {$globvar_tempcpu = $json_output[TempCPU];} else {$globvar_tempcpu = 0;} if ( is_numeric($json_output[freedisk])) {$globvar_freedisk = $json_output[freedisk];} else {$globvar_freedisk = 0;} if ($windspeed_unit_mode == 'auto'){ $globvar_wind_unit = '"'.$json_output[wind_speed_units].'"'; } } //ricava informazioni check errori e min/maxdelta da meteofile.txt generato if ($txtoutput == "True") { $sourcetxtgen = file_get_contents($txtmeteofile); $json_outputgen = json_decode($sourcetxtgen, true); $globvar_wind_chill_maxdelta = $json_outputgen[wind_chill_maxdelta24]; $globvar_wind_chill_maxdelta_time = (string)$json_outputgen[wind_chill_maxdelta24_time]; // else {$globvar_wind_chill_maxdelta_time = "null";} $globvar_temp_apparent_maxdelta = $json_outputgen[temp_apparent_maxdelta24]; $globvar_temp_apparent_maxdelta_time = (string)$json_outputgen[temp_apparent_maxdelta24_time];// else {$globvar_temp_apparent_maxdelta_time = "null";} $globvar_cloud_base_altitude_max = $json_outputgen[cloud_base_altitude_max24]; $globvar_cloud_base_altitude_max_time= (string)$json_outputgen[cloud_base_altitude_max24_time]; //else {$globvar_cloud_base_altitude_max_time = "null";} $globvar_cloud_base_altitude_min = $json_outputgen[cloud_base_altitude_min24]; $globvar_cloud_base_altitude_min_time= (string)$json_outputgen[cloud_base_altitude_min24_time]; //else {$globvar_cloud_base_altitude_min_time = "null";} $globvar_rain_rate_1h_max24 = $json_outputgen[rain_rate_1h_max24]; $globvar_rain_rate_1h_max24_time= (string)$json_outputgen[rain_rate_1h_max24_time]; if ( is_numeric($json_outputgen[err_check])) {$errcheck = $json_outputgen[err_check];} else {$errcheck = 0;} } else { $errcheck = 0; $globvar_wind_chill_maxdelta = 0; $globvar_temp_apparent_maxdelta =0; $globvar_cloud_base_altitude_max =0; $globvar_cloud_base_altitude_min =0; } // controllo pre-correzione - non confrontare con dati vecchi o corretti più volte (max err check) if (( $actualdelay < $timedelay ) and ($errcheck < $maxerrcheck )) { $wind_corr = 'True'; $hum_out_corr = 'True'; $hum_in_corr = 'True'; $temp_out_corr = 'True'; $temp_in_corr = 'True'; $rel_pressure_corr = 'True'; //check vento - funziona solo se swpi, anche se legge valori di vento anomalo, NON lo registra nel winDayGustMax (a me capita così, e filtra a dovere.) if($globvar_wind_gust > $globvar_winDayGustMax) { echo("MYSQLogger Alert: Dati anomali - Raff.vento ($globvar_wind_gust) > Raffica Max giornaliera ($globvar_winDayGustMax) - Duplicati i precedenti (velocità) \n"); $globvar_wind_ave = $dblast_windspd; $globvar_wind_gust = $dblast_gust; $globvar_winDayGustMax = $dblast_gustDaymax; //dovrebbero già essere uguali... $globvar_wind_daymax = $dblast_windspd; if ($globvar_wind_daymin < 0) {$globvar_wind_daymin = 0;} if ($globvar_wind_dayGustMin < 0) {$globvar_wind_dayGustMin = 0;} $errcheck = $errcheck + 1; } else { $wind_corr = 'False';} //check hum out if(($globvar_hum_out < ($dblast_hum_out - $hum_delta_limit)) or ($globvar_hum_out > ($dblast_hum_out + $hum_delta_limit))) { echo("MYSQLogger Alert: Dati anomali - Hum_out ($globvar_hum_out) eccede di +/- ($hum_delta_limit) da ultima misura ($dblast_hum_out) - Duplicato il precedente \n"); $globvar_hum_out = $dblast_hum_out; $globvar_hum_out_dayMax = $dbdaymaxhum_out; $globvar_hum_out_dayMin = $dbdayminhum_out; $errcheck = $errcheck + 1; } else { $hum_out_corr = 'False';} //check hum in if(($globvar_hum_in < ($dblast_hum_in - $humin_delta_limit)) or ($globvar_hum_in > ($dblast_hum_in + $humin_delta_limit))) { echo("MYSQLogger Alert: Dati anomali - Hum_in ($globvar_hum_in) eccede di +/- ($humin_delta_limit) da ultima misura ($dblast_hum_in) - Duplicato il precedente \n"); $globvar_hum_in = $dblast_hum_in; $globvar_hum_in_dayMax = $dbdaymaxhum_in; $globvar_hum_in_dayMin = $dbdayminhum_in; $errcheck = $errcheck + 1; } else { $hum_in_corr = 'False';} //check temp out if(($globvar_temp_out < ($dblast_temp_out - $temp_delta_limit)) or ($globvar_temp_out > ($dblast_temp_out + $temp_delta_limit))) { echo("MYSQLogger Alert: Dati anomali - Temp_out ($globvar_temp_out) eccede di +/- ($temp_delta_limit) da ultima misura ($dblast_temp_out) - Duplicato il precedente \n"); $globvar_temp_out = $dblast_temp_out; $globvar_TempOutMax = $dbdaymaxtemp_out; $globvar_TempOutMin = $dbdaymintemp_out; $errcheck = $errcheck + 1; } else { $temp_out_corr = 'False';} //check temp in if(($globvar_temp_in < ($dblast_temp_in - $tempin_delta_limit)) or ($globvar_temp_in > ($dblast_temp_in + $tempin_delta_limit))) { echo("MYSQLogger Alert: Dati anomali - Temp_in ($globvar_temp_in) eccede di +/- ($tempin_delta_limit) da ultima misura ($dblast_temp_in) - Duplicato il precedente \n"); $globvar_temp_in = $dblast_temp_in; $globvar_temp_in_dayMax = $dbdaymaxtemp_in; $globvar_temp_in_dayMin = $dbdaymintemp_in; $errcheck = $errcheck + 1; } else { $temp_in_corr = 'False';} //check barometro if(($globvar_rel_pressure < ($dblast_bar_out - $baro_delta_limit)) or ($globvar_rel_pressure > ($dblast_bar_out + $baro_delta_limit))) { echo("MYSQLogger Alert: Dati anomali - Barometro ($globvar_rel_pressure) eccede di +/- ($baro_delta_limit) da ultima misura ($dblast_bar_out) - Duplicato il precedente \n"); $globvar_rel_pressure = $dblast_bar_out; $globvar_pressure_dayMax = $dbdaymaxbaro; $globvar_pressure_dayMin = $dbdayminbaro; $errcheck = $errcheck + 1; } else { $rel_pressure_corr = 'False';} } elseif (($errcheck > $maxerrcheck) or ($errcheck = $maxerrcheck) ) { echo("MYSQLogger Alert: Numero correzioni consecutive ($maxerrcheck) superato. Bypassato il check errori. \n"); $errcheck = 0; } elseif (!($timedelay+0)==0) { echo("MYSQLogger Alert: Aggiornamento Dbase piu datato di ($timedelay) min - Check errori annullato (agg. $actualdelay min fa) \n"); $errcheck = 0; } if (($wind_corr == 'False') and ($hum_out_corr == 'False') and ($hum_in_corr == 'False') and ($temp_in_corr== 'False') and ($temp_out_corr== 'False') and ($rel_pressure_corr == 'False')) { $errcheck = 0; } //calcolo dewpoint se abilitato - p.to di rugiada if ($dewpointcalc == 'True') { function getDewpoint($hum, $temp) { // hum rel (%RH), temp: °C if ( $hum == 0 ) {return 0;} $Es = 6.11 * pow(10,((7.5 * $temp)/(237.7 + $temp))); $E = ($hum * $Es)/100; $dp = (-430.22 + 237.7 * log($E))/(- log($E)+19.08); return $dp; } $globvar_dew_point = round(getDewpoint($globvar_hum_out,$globvar_temp_out),2); } //calcolo windchill se abilitato if ($windchillcalc == 'True') { function getWindChill($wind, $temp) { //wind: km/h, temp: °C $wind = $wind *1.582; $wind2 = pow($wind, 0.16); $wind_chill = (13.12 + 0.06215 * $temp - 11.37 * $wind2 + 0.3965 * $temp * $wind2); $wind_chill = round($wind_chill,2); $wind_chill = ($wind <= 4.8) ? $temp : $wind_chill; $wind_chill = ($temp > 10) ? $temp : $wind_chill; return $wind_chill; } if ($windspeed_unit_mode != 'auto'){ $globvar_wind_unit = $windspeed_unit_mode;} if ($globvar_wind_unit == "knots") { $speedchill = $globvar_wind_ave * 1.852; } if ($globvar_wind_unit == "mph") { $speedchill = $globvar_wind_ave * 1.60934; } $globvar_wind_chill = getWindChill($speedchill,$globvar_temp_out); } //calcolo windchill_maxdelta $actualdelta = $globvar_temp_out - $globvar_wind_chill ; if (!is_numeric($globvar_wind_chill_maxdelta)) {$globvar_wind_chill_maxdelta = 0; $globvar_wind_chill_maxdelta_time = "00:00:00"; } if (($actualdelta > $globvar_wind_chill_maxdelta) and ($actualdelta > 0)) {$globvar_wind_chill_maxdelta = $actualdelta; $globvar_wind_chill_maxdelta_time = $globvar_time; } if (($actualdelta < $globvar_wind_chill_maxdelta) and ($actualdelta < 0)) {$globvar_wind_chill_maxdelta = $actualdelta; $globvar_wind_chill_maxdelta_time = $globvar_time; } //calcolo temp_apparent_maxdelta $actualdelta = $globvar_temp_apparent - $globvar_temp_out ; if (!is_numeric($globvar_temp_apparent_maxdelta)) {$globvar_temp_apparent_maxdelta = 0; $globvar_temp_apparent_maxdelta_time = "00:00:00";} if (($actualdelta > $globvar_temp_apparent_maxdelta) and ($actualdelta > 0)) {$globvar_temp_apparent_maxdelta = $actualdelta; $globvar_temp_apparent_maxdelta_time = $globvar_time; } if (($actualdelta < $globvar_temp_apparent_maxdelta) and ($actualdelta < 0)) {$globvar_temp_apparent_maxdelta = $actualdelta; $globvar_temp_apparent_maxdelta_time = $globvar_time; } //calcolo max e min cloudbase altitude if (!is_numeric($globvar_cloud_base_altitude_max)) {$globvar_cloud_base_altitude_max = $globvar_cloud_base_altitude; $globvar_cloud_base_altitude_max_time = "00:00:00";} if (!is_numeric($globvar_cloud_base_altitude_min)) {$globvar_cloud_base_altitude_min = $globvar_cloud_base_altitude; $globvar_cloud_base_altitude_min_time = "00:00:00";} if ($globvar_cloud_base_altitude > $globvar_cloud_base_altitude_max) {$globvar_cloud_base_altitude_max = $globvar_cloud_base_altitude; $globvar_cloud_base_altitude_max_time = $globvar_time; } if ($globvar_cloud_base_altitude < $globvar_cloud_base_altitude_min) {$globvar_cloud_base_altitude_min = $globvar_cloud_base_altitude; $globvar_cloud_base_altitude_min_time = $globvar_time; } //calcolo max rain rate 1h if (!is_numeric($globvar_rain_rate_1h_max24)) {$globvar_rain_rate_1h_max24 = $globvar_rain_rate_1h; $globvar_rain_rate_1h_max24_time = "00:00:00";} if ($globvar_rain_rate_1h > $globvar_rain_rate_1h_max24) {$globvar_rain_rate_1h_max24 = $globvar_rain_rate_1h; $globvar_rain_rate_1h_max24_time = $globvar_time; } //reset valori minimi, massimi e delta se cambia giorno if (strtotime($dataoggi) > strtotime($dblast_datetime)) { $globvar_cloud_base_altitude_max = $globvar_cloud_base_altitude; $globvar_cloud_base_altitude_min = $globvar_cloud_base_altitude; $globvar_cloud_base_altitude_max_time = $globvar_time; $globvar_cloud_base_altitude_min_time = $globvar_time; $globvar_temp_apparent_maxdelta = $actualdelta; $globvar_temp_apparent_maxdelta_time = $globvar_time; $globvar_wind_chill_maxdelta = $actualdelta; $globvar_wind_chill_maxdelta_time = $globvar_time; $globvar_rain_rate_1h_max24 = $globvar_rain_rate_1h; $globvar_rain_rate_1h_max24_time = $globvar_time; } //scrive dati meteo nuovi -e corretti- nel db mysql $con = mysql_connect($server,$user,$pwd); mysql_select_db($db); if (!$con) { die('Could not connect: ' . mysql_error()); } //i 2 db non hanno lo stesso numero di campi // echo("$globvar_date , $globvar_time , $globvar_last_measure_time , $globvar_hum_out , $globvar_temp_out , $globvar_rain , $globvar_rain_rate , $globvar_wind_dir , $globvar_wind_ave , $globvar_wind_gust , $globvar_dew_point , $globvar_hum_in , $globvar_temp_in , $globvar_rel_pressure , $globvar_TempOutMax , $globvar_TempOutMin , $globvar_winDayGustMax , $globvar_uvindex , $globvar_solar_rad , $globvar_stationid , $globvar_wind_chill "); if ($dbtype == 'WU') { $sql = "INSERT INTO $tablename ($globfield_date, $globfield_time, $globfield_last_measure_time, $globfield_hum_out, $globfield_temp_out, $globfield_rain, $globfield_rain_rate, $globfield_wind_dir, $globfield_wind_ave, $globfield_wind_gust, $globfield_dew_point, $globfield_hum_in, $globfield_temp_in, $globfield_rel_pressure, $globfield_TempOutMax, $globfield_TempOutMin, $globfield_winDayGustMax, $globfield_uvindex, $globfield_solar_rad, $globfield_stationid, $globfield_wind_chill ) VALUES ('".$globvar_date."','".$globvar_time."','".$globvar_last_measure_time."',".$globvar_hum_out.",".$globvar_temp_out.",".$globvar_rain_rate.",".$globvar_rain_rate_1h.",".$globvar_wind_dir.",".$globvar_wind_ave.",".$globvar_wind_gust.",".$globvar_dew_point.",".$globvar_hum_in.",".$globvar_temp_in.",".$globvar_rel_pressure.",".$globvar_TempOutMax.",".$globvar_TempOutMin.",".$globvar_winDayGustMax.",".$globvar_uvindex.",".$globvar_solar_rad.",'".$globvar_stationid."',".$globvar_wind_chill." )"; } elseif ($dbtype == 'SW') { $sql = "INSERT INTO $tablename ($globfield_last_measure_time, $globfield_timestamp_idx, $globfield_wind_dir_code, $globfield_wind_dir, $globfield_wind_ave, $globfield_wind_gust, $globfield_temp_out, $globfield_rel_pressure, $globfield_hum_out, $globfield_rain, $globfield_rain_rate, $globfield_temp_in, $globfield_hum_in, $globfield_wind_chill, $globfield_temp_apparent, $globfield_dew_point, $globfield_uvindex, $globfield_solar_rad, $globfield_wind_daymin, $globfield_wind_daymax, $globfield_winDayGustMin , $globfield_winDayGustMax,$globfield_TempOutMin,$globfield_TempOutMax,$globfield_temp_in_dayMin,$globfield_temp_in_dayMax,$globfield_hum_out_dayMin ,$globfield_hum_out_dayMax ,$globfield_hum_in_dayMin,$globfield_hum_in_dayMax, $globfield_pressure_dayMin,$globfield_pressure_dayMax,$globfield_wind_dir_ave) VALUES ('".$globvar_last_measure_time."','".$globvar_timestamp_idx."','".$globvar_wind_dir_code."',".$globvar_wind_dir.",".$globvar_wind_ave.",".$globvar_wind_gust.",".$globvar_temp_out.",".$globvar_rel_pressure.",".$globvar_hum_out.",".$globvar_rain_rate.",".$globvar_rain_rate_1h.",".$globvar_temp_in.",".$globvar_hum_in.",".$globvar_wind_chill.",".$globvar_temp_apparent.",".$globvar_dew_point.",".$globvar_uvindex.",".$globvar_solar_rad.",".$globvar_wind_daymin.",".$globvar_wind_daymax.",".$globvar_winDayGustMin.",".$globvar_winDayGustMax.",".$globvar_TempOutMin.",".$globvar_TempOutMax.",".$globvar_temp_in_dayMin.",".$globvar_temp_in_dayMax.",".$globvar_hum_out_dayMin.",".$globvar_hum_out_dayMax.",".$globvar_hum_in_dayMin.",".$globvar_hum_in_dayMax.",".$globvar_pressure_dayMin.",".$globvar_pressure_dayMax.",".$globvar_wind_dir_ave." )"; } $result = mysql_query($sql) ; if (!$result) { die('Errore nella query $query: ' . mysql_error()); //die("Errore nella query $query: " . $sql); } mysql_close($con); //creazione meteofile if ($txtoutput == 'True') { //funzione per tradurre gradi in testo if ($winddir_names == 'True') { function degtotxt ($degrees) { if ($degrees > 342.4) {return "N, Tramontana";} elseif ($degrees > 319.9) {return "NNW, Zefiro";} elseif ($degrees > 297.4) {return "NW, Maestrale";} elseif ($degrees > 274.9) {return "WNW, Traversone";} elseif ($degrees > 252.4) {return "W, Ponente";} elseif ($degrees > 229.9) {return "WSW, Etesia";} elseif ($degrees > 207.4) {return "SW, Libeccio";} elseif ($degrees > 184.9) {return "SSW, Cauro";} elseif ($degrees > 152.4) {return "S, Ostro";} elseif ($degrees > 139.9) {return "SSE, Africo";} elseif ($degrees > 117.4) {return "SE, Scirocco";} elseif ($degrees > 94.9) {return "ESE, Solano";} elseif ($degrees > 72.4) {return "E, Levante";} elseif ($degrees > 49.9) {return "ENE, Schiavo";} elseif ($degrees > 27.4) {return "NE, Grecale";} else {return "N, Tramontana";} } } else { function degtotxt ($degrees) { if ($degrees > 342.4) {return "N";} elseif ($degrees > 319.9) {return "NNW";} elseif ($degrees > 297.4) {return "NW";} elseif ($degrees > 274.9) {return "WNW";} elseif ($degrees > 252.4) {return "W";} elseif ($degrees > 229.9) {return "WSW";} elseif ($degrees > 207.4) {return "SW";} elseif ($degrees > 184.9) {return "SSW";} elseif ($degrees > 152.4) {return "S";} elseif ($degrees > 139.9) {return "SSE";} elseif ($degrees > 117.4) {return "SE";} elseif ($degrees > 94.9) {return "ESE";} elseif ($degrees > 72.4) {return "E";} elseif ($degrees > 49.9) {return "ENE";} elseif ($degrees > 27.4) {return "NE";} else {return "N";} } } //assegnazione e adattamento variabili per output meteofile $idxtxt = date_format($ultimoidx,'d/m/Y-H:i:s'); $ultimamisuratxt= date_format($ultimamisura,'d/m/Y-H:i:s'); $dbdaymaxgust_wind_dir_code = degtotxt($dbdaymaxgust_wind_dir); $dbdaymingust_wind_dir_code = degtotxt($dbdaymingust_wind_dir); $dbdaymaxavg_wind_dir_code = degtotxt($dbdaymaxavg_wind_dir); $dbdayminavg_wind_dir_code = degtotxt($dbdayminavg_wind_dir); $dbdaymaxavg_wind_time = substr($dbdaymaxavg_wind_time,0,5); $dbdayminavg_wind_time = substr($dbdayminavg_wind_time,0,5); $dbdaymaxgust_wind_time = substr($dbdaymaxgust_wind_time,0,5); $dbdaymingust_wind_time = substr($dbdaymingust_wind_time,0,5); $globvar_wind_chill_maxdelta_time = substr($globvar_wind_chill_maxdelta_time,0,5); $globvar_temp_apparent_maxdelta_time = substr($globvar_temp_apparent_maxdelta_time,0,5); $dbdaymaxtemp_out_time = substr($dbdaymaxtemp_out_time,0,5); $dbdaymaxtemp_in_time = substr($dbdaymaxtemp_in_time,0,5); $dbdaymintemp_out_time = substr($dbdaymintemp_out_time,0,5); $dbdaymintemp_in_time = substr($dbdaymintemp_in_time,0,5); $dbdaymaxdew_point_time = substr($dbdaymaxdew_point_time,0,5); $dbdaymindew_point_time = substr($dbdaymindew_point_time,0,5); $dbdayminbaro_time = substr($dbdayminbaro_time,0,5); $dbdaymaxbaro_time = substr($dbdaymaxbaro_time,0,5); $dbdayminhum_in_time = substr($dbdayminhum_in_time,0,5); $dbdayminhum_out_time = substr($dbdayminhum_out_time,0,5); $dbdaymaxhum_in_time = substr($dbdaymaxhum_in_time,0,5); $dbdaymaxhum_out_time = substr($dbdaymaxhum_out_time,0,5); $dbdaymaxuvindex_time = substr($dbdaymaxuvindex_time,0,5); $dbdaymaxsolar_rad_time = substr($dbdaymaxsolar_rad_time,0,5); $globvar_cloud_base_altitude_max_time = substr($globvar_cloud_base_altitude_max_time,0,5); $globvar_cloud_base_altitude_min_time = substr($globvar_cloud_base_altitude_min_time,0,5); $globvar_rain_rate_1h_max24_time = substr($globvar_rain_rate_1h_max24_time,0,5); // crea stringa meteo $txtstring =" { \"station_name\": $globvar_station_name, \"location_latitude\": $globvar_location_latitude, \"location_longitude\": $globvar_location_longitude, \"location_altitude\": $globvar_location_altitude, \"idx\": \"[$idxtxt]\", \"last_measure_time\": \"[$ultimamisuratxt]\", \"wind_ave\": $globvar_wind_ave, \"wind_gust\": $globvar_wind_gust, \"wind_dir\": $globvar_wind_dir, \"wind_dir_code\": \"$globvar_wind_dir_code\", \"wind_dir_ave\": $globvar_wind_dir_ave, \"wind_trend\": $globvar_wind_trend, \"wind_trend_limit\": $globvar_wind_trend_limit, \"wind_speed_units\": $globvar_wind_unit, \"winDayMax\": $dbdaymaxavg_wind, \"winDayMax_dir\": $dbdaymaxavg_wind_dir, \"winDayMax_dir_code\": \"$dbdaymaxavg_wind_dir_code\", \"winDayMax_time\": \"$dbdaymaxavg_wind_time\", \"winDayMin\": $dbdayminavg_wind, \"winDayMin_dir\": $dbdayminavg_wind_dir, \"winDayMin_dir_code\": \"$dbdayminavg_wind_dir_code\", \"winDayMin_time\": \"$dbdayminavg_wind_time\", \"winDayGustMax\": $dbdaymaxgust_wind, \"winDayGustMax_dir\": $dbdaymaxgust_wind_dir, \"winDayGustMax_dir_code\": \"$dbdaymaxgust_wind_dir_code\", \"winDayGustMax_time\": \"$dbdaymaxgust_wind_time\", \"winDayGustMin\": $dbdaymingust_wind, \"winDayGustMin_dir\": $dbdaymingust_wind_dir, \"winDayGustMin_dir_code\": \"$dbdaymingust_wind_dir_code\", \"winDayGustMin_time\": \"$dbdaymingust_wind_time\", \"wind_chill\": $globvar_wind_chill, \"wind_chill_maxdelta24\": $globvar_wind_chill_maxdelta, \"wind_chill_maxdelta24_time\": \"$globvar_wind_chill_maxdelta_time\", \"temp_out\": $globvar_temp_out, \"TempOutMax\": $dbdaymaxtemp_out, \"TempOutMax_time\": \"$dbdaymaxtemp_out_time\", \"TempOutMin\": $dbdaymintemp_out, \"TempOutMin_time\": \"$dbdaymintemp_out_time\", \"temp_in\": $globvar_temp_in, \"TempInMax\": $dbdaymaxtemp_in, \"TempInMax_time\": \"$dbdaymaxtemp_in_time\", \"TempInMin\": $dbdaymintemp_in, \"TempInMin_time\": \"$dbdaymintemp_in_time\", \"temp_apparent\": $globvar_temp_apparent, \"temp_apparent_maxdelta24\": $globvar_temp_apparent_maxdelta, \"temp_apparent_maxdelta24_time\": \"$globvar_temp_apparent_maxdelta_time\", \"dew_point\": $globvar_dew_point, \"dew_pointDayMax\": $dbdaymaxdew_point, \"dew_pointDayMax_time\": \"$dbdaymaxdew_point_time\", \"dew_pointDayMin\": $dbdaymindew_point, \"dew_pointDayMin_time\": \"$dbdaymindew_point_time\", \"abs_pressure\": $globvar_abs_pressure, \"rel_pressure\": $globvar_rel_pressure, \"PressureMax\": $dbdaymaxbaro, \"PressureMax_time\": \"$dbdaymaxbaro_time\", \"PressureMin\": $dbdayminbaro, \"PressureMin_time\": \"$dbdayminbaro_time\", \"pressure_trend\": $globvar_pressure_trend, \"hum_out\": $globvar_hum_out, \"UmOutMax\": $dbdaymaxhum_out, \"UmOutMax_time\": \"$dbdaymaxhum_out_time\", \"UmOutMin\": $dbdayminhum_out, \"UmOutMin_time\": \"$dbdayminhum_out_time\", \"hum_in\": $globvar_hum_in, \"UmInMax\": $dbdaymaxhum_in, \"UmInMax_time\": \"$dbdaymaxhum_in_time\", \"UmInMin\": $dbdayminhum_in, \"UmInMin_time\": \"$dbdayminhum_in_time\", \"rain\": $globvar_rain, \"rain_rate\": $globvar_rain_rate, \"rain_rate_1h\": $globvar_rain_rate_1h, \"rain_rate_1h_max24\": $globvar_rain_rate_1h_max24, \"rain_rate_1h_max24_time\": \"$globvar_rain_rate_1h_max24_time\", \"rain_rate_24h\": $globvar_rain_rate_24h, \"uv\": $globvar_uvindex, \"uvDayMax\": $dbdaymaxuvindex, \"uvDayMax_time\": \"$dbdaymaxuvindex_time\", \"illuminance\": $globvar_solar_rad, \"illuminanceDayMax\": $dbdaymaxsolar_rad, \"illuminanceDayMax_time\": \"$dbdaymaxsolar_rad_time\", \"cloud_base_altitude\": $globvar_cloud_base_altitude, \"cloud_base_altitude_max24\": $globvar_cloud_base_altitude_max, \"cloud_base_altitude_max24_time\": \"$globvar_cloud_base_altitude_max_time\", \"cloud_base_altitude_min24\": $globvar_cloud_base_altitude_min, \"cloud_base_altitude_min24_time\": \"$globvar_cloud_base_altitude_min_time\", \"TempCPU\": $globvar_tempcpu, \"freedisk\": $globvar_freedisk, \"err_check\": $errcheck}"; // scrive file meteo.txt $fp = fopen($txtmeteofile, 'w'); fwrite($fp, $txtstring); fflush($fp); fclose($fp); } echo 'MYSQLogger by SkizZO v2.1: Dati aggiornati'; ?>