Bonjour,
le serveur : Version du serveur : 10.5.19-MariaDB-0+deb11u2 - Debian 11 et Version du client de base de données : libmysql - mysqlnd 7.4.33
Extension PHP : mysqli Documentation curl Documentation mbstring Documentation
Version de PHP : 7.4.33

Soit une table (meteo)qui contient température pression humidité, alimentée automatiquement par un script php qui reçoit les données du capteur. (avec id auto incrémentée et date d'insert (datetime))
une 2eme table (meteo_calc) doit recevoir les calculs moy min et max de ces 3 données
j'ai choisi comme critère pour faire les calculs : je prend l'id de la dernière insertion et je compare la date avec la date de la précédente id
si idem, je ne fait rien, sinon c'est que j'ai changé de jour, et je calcule les données de la veille.
Mon code ne fonctionne pas (pour les test j'insere des données fictives pour meteo_calc)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
$connection = new mysqli($servername, $username, $password, $database_name);
    if ($connection->connect_error) {
      die("MySQL connection failed: " . $connection->connect_error);
   }
 
   $sql = "INSERT INTO meteo (temperature,pression,humidite) VALUES ($temperature,$pression,$humidite)";
 
   if ($connection->query($sql) == TRUE) {
 
      $id_dernier_insert = $connection->insert_id;
      $avant_derniere_date = $connection->query("SELECT date(datetime) FROM meteo WHERE ID = ({$id_dernier_insert}-1) ");
      $derniere_date = $connection->query("SELECT date(datetime) FROM meteo WHERE ID = {$id_dernier_insert}"); 
 
      $sql_calc = "INSERT INTO meteo_calc
    	 (min_temp, max_temp, moy_temp, min_pres, max_pres, moy_pres, min_hum, max_hum, moy_hum, jour) 
    	 VALUES
    	  (12.00, 28.00, 16.00, 1001.00, 1022.00, 1015.20, 52.00, 88.00, 67.00, '2023-07-15')";
 
      if (strtotime($avant_derniere_date) == strtotime($derniere_date)) {} else {
    	$connection->query($sql_calc);	   
	}	
   } else {
      echo "Error: " . $sql . " => " . $connection->error;
   }
   $connection->close();
} else {
   echo "temperature is not set in the HTTP request";
}
je pense que l'erreur vient que j'ai une erreur pour l'affectation de $avant_derniere_date et $derniere_date et donc que ces 2 valeurs sont toujours les mêmes donc pas d'insertion

Merci de votre aide