Dopo molto tempo riesumo questo post
Devo confermare che tutto funziona installato su 6 impianti e girano da molti anni
Per Me molto importante questo progetto perchè mi permette di monitorare la produzione fotovoltaico da remoto su centraline meteo dislocate anche montagna.
Vengo al dunque su altervista l'unico ancora a usare il PHP 5.6 penso che tra poco morirà e con lui tutto questo progetto se non si modifica il file arduino.php che lavora da quello che ho provato solo con il php 5.6
Quindi se qualche buona anima che ne capisce di php modifica il file almeno in php 7.3
Grazie
<?php
include("../settaggi.php");
//controllo se sono presenti i parametri valore e localita
if(isset($_GET["psw"]))
{
$connessione = @mysql_connect("localhost", $nome_database) or die("Connessione non riuscita: " . mysql_error());
mysql_select_db($nome_database, $connessione) or die("Errore selezione database: " . mysql_error());
if($_GET["psw"] == $psw){
$tensione_pannello = $_GET["tensione_pannello"] / 100;
if($tipo_regolatore=="bn")
{
$corrente_pannello = $_GET["corrente_pannello"] / 100; //per regolatore serie bn
}
$tensione_batteria = $_GET["tensione_batteria"] / 100;
$corrente_batteria = $_GET["corrente_batteria"] / 100;
$tensione_carico = $_GET["tensione_carico"] / 100;
$corrente_carico = $_GET["corrente_carico"] / 100;
$temperatura = $_GET["temperatura"];
$soc = $_GET["soc"];
$ah_consumati = $_GET["ah_consumati"];
$ah_prodotti = $_GET["ah_prodotti"];
$reset_shield = $_GET["reset_shield"];
if($tipo_regolatore=="rn")
{
$corrente_pannello = (($tensione_batteria * $corrente_batteria) / $tensione_pannello) / 0.93; //per regolatore serie rn
}
//Preparo la query per inserire i dati di tensione e corrente
$queryA = "INSERT INTO dati_ricarica
(
tensione_pannello,
corrente_pannello,
tensione_batteria,
corrente_batteria,
tensione_carico,
corrente_carico,
temperatura,
soc
)
VALUES
(
'$tensione_pannello',
'$corrente_pannello',
'$tensione_batteria',
'$corrente_batteria',
'$tensione_carico',
'$corrente_carico',
'$temperatura',
'$soc'
)";
//Preparo la query per inserire i dati di consumo in ah
$queryB = "INSERT INTO consumi VALUES (curdate(), '$ah_prodotti', '$ah_consumati')
ON DUPLICATE KEY
UPDATE ah_prodotti = '$ah_prodotti', ah_consumati = '$ah_consumati'";
//eseguo la query
$insertA = mysql_query($queryA, $connessione);
$insertB = mysql_query($queryB, $connessione);
$esito = mysql_affected_rows();
if($esito == 1){
echo "reset_ah";
}
if($insertA && $insertB){
echo "update_ok";
}
//incrementa il contatore di reset
if($reset_shield == 1){
$query = "UPDATE parametri SET reset_shield=reset_shield+1, data = now()";
//$query = "INSERT INTO parametri (data) VALUES (now()";
$update = mysql_query($query, $connessione);
}
}
// Restituisce ad arduino i valori del giorno salvati di Ah
if($_GET["psw"] == $psw2){
$query = "SELECT * FROM consumi WHERE DATE(data) = CURDATE()";
$risultato = mysql_query($query, $connessione);
$riga = mysql_fetch_row($risultato);
echo "ah_prodotti=$riga[1] ah_consumati=$riga[2] endAh";
}
//chiudo la connessione al db
mysql_close($connessione);
}
?>