Encore ces requêtes

Un problème, une question sur la partie PHP des graphiques

Modérateurs : jturlier, Météo Villarzel

Répondre
JP54
Messages : 331
Enregistré le : 15 févr. 2014, 06:44
Localisation : JARNY Meurthe-et-Moselle (54) Région Lorraine
Contact :

Encore ces requêtes

Message par JP54 » 19 déc. 2017, 17:28

Bonjour,
Encore des problèmes de start stop et requête. :oops:
Je voudrais faire des graphiques mensuels regroupant la pluviométrie journalière.
J'ai utilisé ce start stop et cette requête.

Code : Tout sélectionner

<?php
require("mysqli_connect.php");                     
$sql="select max(tstamp) from MiniMaxidata";
$query=mysqli_query($conn,$sql);                  
$list=mysqli_fetch_array($query);     
    
$stop=$list[0];
$start = mktime(0, 0, 0, 1, 1, 2017);
$stop = mktime(0-1, 0, 0, 2, 1, 2017);

$sql = "SELECT tstamp, Rain_jour  FROM MiniMaxidata where tstamp >= '$start' and  tstamp <= '$stop' ORDER BY 1";  
 $query=mysqli_query($conn,$sql);                                  
$i=0;
 while ($list = mysqli_fetch_array($query)) {             
if (date("I",time())==0) { 
	$time[$i]=($list['tstamp']+3600)*1000;
	} 
else {
	$time[$i]=($list['tstamp']+7200)*1000;
  } 

$Rain_jour[$i]=$list['Rain_jour']*1;
$i++;
} 	
  ?>
http://www.meteo-jarny.com/archive/stat ... -pluie.php

Ca fonctionne pour les mois de janvier et février. Par contre ça ne fonctionne pas pour le mois de mars, il se termine le 30 mars, ni pour le mois 'avril, il commence le 30 mars et se termine le 29 avril. Pour avoir les mois de mars et d'avril complets, je suis obligé de modifié le start stop et je ne pense que ce soit la solution.
http://www.meteo-jarny.com/archive/stat ... -pluie.php
Je pense que le problème vient de mon start stop qui d'après ce que j'ai lu sur le forum utilse le tstamp.
j'ai essayé de faire une requête sans start stop et avec redacteTZ, mais sans succès.
J'ai encore de vous, un petit coup de pouce serait le bienvenu.
Pascal
Station VP2 Weatherlink 5.8.1 VP2SQL 3.0.0.17 NOAAtable 1.0.0.30 Windows 7 Pro
http://www.meteo-jarny.com/

Avatar du membre
Météo Villarzel
Administrateur du site
Messages : 524
Enregistré le : 06 févr. 2014, 09:48
Contact :

Re: Encore ces requêtes

Message par Météo Villarzel » 19 déc. 2017, 22:47

Salut Pascal
tu devrait pouvoir utiliser cette requête
http://www.meteo-jarny.com/DY-graphique ... uie-01.php

A+
Station Vantage Pro2+ avec station agricole - Weatherlink - GraphWeather 3.0.15b - Cumulus 1.9.4 - Windows 7/64
Graphique dynamique à partir d'une bd MySql - VP2SQL

Image

JP54
Messages : 331
Enregistré le : 15 févr. 2014, 06:44
Localisation : JARNY Meurthe-et-Moselle (54) Région Lorraine
Contact :

Re: Encore ces requêtes

Message par JP54 » 20 déc. 2017, 07:51

Bonjour Pierre André,
La requête dont tu parles regroupe les jours de pluies des mois de janvier, moi je voudrais faire des graphiques des cumuls de pluies journaliers de tous les mois en partant du 1er du mois jusqu'au 30 ou 31.
La requête dont tu parles

Code : Tout sélectionner

$sql = "SELECT substr(recdateTZ,1,4) AS Annee, sum(Rain_jour>=1) AS NBJG FROM MiniMaxidata WHERE substr(recdateTZ,5,2)='01' GROUP BY 1"; 
Je vais essayé, mais je ne suis sur de pouvoir la modifié.
Station VP2 Weatherlink 5.8.1 VP2SQL 3.0.0.17 NOAAtable 1.0.0.30 Windows 7 Pro
http://www.meteo-jarny.com/

JP54
Messages : 331
Enregistré le : 15 févr. 2014, 06:44
Localisation : JARNY Meurthe-et-Moselle (54) Région Lorraine
Contact :

Re: Encore ces requêtes

Message par JP54 » 20 déc. 2017, 10:00

Je pense avoir trouvé. Cette requête à l'air de fonctionné

Code : Tout sélectionner

<?php
require("mysqli_connect.php");                     
$sql="select max(tstamp) from MiniMaxidata";
$query=mysqli_query($conn,$sql);                  
$list=mysqli_fetch_array($query);     
    
$start = mktime(0,0,0,1,1,date("2017")); 
$stop = mktime(0,0,0,2,1,date("2017")); 

$sql = "SELECT tstamp, Rain_jour FROM MiniMaxidata where tstamp >= '$start' and  tstamp < '$stop' ORDER BY 1";

$query=mysqli_query($conn,$sql);                                  
$i=0;
 while ($list = mysqli_fetch_array($query)) {             
	$time[$i]=($list['tstamp']+7200)*1000;
  
$Rain_jour[$i]=$list['Rain_jour']*1;
$i++;
} 	
  ?>
J'ai recherché sur le forum car j'avais déjà eu des problèmes de ce genre et j'ai retrouvé une requête qui m'avait été donné par Pascal que j'ai adapté et j'ai supprimé cette partie de code de ma requête dans mon premier message.

Code : Tout sélectionner

while ($list = mysqli_fetch_array($query)) {             
if (date("I",time())==0) { 
	$time[$i]=($list['tstamp']+3600)*1000;
	} 
Je ne suis pas arrivé à faire une requête avec recdateTZ, si quelqu'un peut m'expliquer comment faire, ça m'aiderais beaucoup.
Station VP2 Weatherlink 5.8.1 VP2SQL 3.0.0.17 NOAAtable 1.0.0.30 Windows 7 Pro
http://www.meteo-jarny.com/

JP54
Messages : 331
Enregistré le : 15 févr. 2014, 06:44
Localisation : JARNY Meurthe-et-Moselle (54) Région Lorraine
Contact :

Re: Encore ces requêtes

Message par JP54 » 20 déc. 2017, 10:50

Encore un problème que je n'arrive pas à expliquer:
J'ai 2 requêtes identique, le graphique de la pluviométrie se termine le 31 janvier et pour le graphique du vent il se termine le 1 février :shock:

Code : Tout sélectionner

<?php
require("mysqli_connect.php");                     
$sql="select max(tstamp) from MiniMaxidata";
$query=mysqli_query($conn,$sql);                  
$list=mysqli_fetch_array($query);     
    
$start = mktime(0,0,0,1,1,date("2017")); 
$stop = mktime(0,0,0,2,1,date("2017")); 

$sql = "SELECT tstamp, Rain_jour FROM MiniMaxidata where tstamp >= '$start' and  tstamp < '$stop' ORDER BY 1";

$query=mysqli_query($conn,$sql);                                  
$i=0;
 while ($list = mysqli_fetch_array($query)) {             
	$time[$i]=($list['tstamp']+7200)*1000;
  
$Rain_jour[$i]=$list['Rain_jour']*1;
$i++;
} 	
  ?>

Code : Tout sélectionner

<?php
require("mysqli_connect.php");                     
$sql="select max(tstamp) from MiniMaxidata";
$query=mysqli_query($conn,$sql);                  
$list=mysqli_fetch_array($query);     
    
$start = mktime(0,0,0,1,1,date("2017")); 
$stop = mktime(0,0,0,2,1,date("2017")); 

$sql = "SELECT tstamp, vent_maxi, Gust_maxi FROM MiniMaxidata where tstamp >= '$start' and  tstamp <= '$stop' ORDER BY 1";  
 
$query=mysqli_query($conn,$sql);                                  
$i=0;
 while ($list = mysqli_fetch_array($query)) {             
	$time[$i]=($list['tstamp']+7200)*1000;

$vent_maxi[$i]=$list['vent_maxi']*1;
$Gust_maxi[$i]=$list['Gust_maxi']*1;
$i++;
} 	
  ?>
http://www.meteo-jarny.com/archive/stat ... -pluie.php
http://www.meteo-jarny.com/archive/stat ... 1-vent.php

Ca ne va pas du tout mes requêtes, il faut que je trouve autre chose
Station VP2 Weatherlink 5.8.1 VP2SQL 3.0.0.17 NOAAtable 1.0.0.30 Windows 7 Pro
http://www.meteo-jarny.com/

Avatar du membre
jturlier
Administrateur du site
Messages : 393
Enregistré le : 10 déc. 2014, 10:20
Localisation : Sérignan 34410
Contact :

Re: Encore ces requêtes

Message par jturlier » 20 déc. 2017, 18:39

Salut Pascal,
tes 2 requêtes ne sont pas identiques !!! C'est donc normal que ton second graphique se termine le 1er février (<= au lieu de <)
Bonne soirée
Jean

Avatar du membre
Météo Villarzel
Administrateur du site
Messages : 524
Enregistré le : 06 févr. 2014, 09:48
Contact :

Re: Encore ces requêtes

Message par Météo Villarzel » 20 déc. 2017, 19:15

Station Vantage Pro2+ avec station agricole - Weatherlink - GraphWeather 3.0.15b - Cumulus 1.9.4 - Windows 7/64
Graphique dynamique à partir d'une bd MySql - VP2SQL

Image

JP54
Messages : 331
Enregistré le : 15 févr. 2014, 06:44
Localisation : JARNY Meurthe-et-Moselle (54) Région Lorraine
Contact :

Re: Encore ces requêtes

Message par JP54 » 20 déc. 2017, 22:43

Eh oui Jean, je n'avais pas vu cette erreur :? Merci
Merci pour le lien Pierre André, très intéressant, je ne le connaissais pas
Station VP2 Weatherlink 5.8.1 VP2SQL 3.0.0.17 NOAAtable 1.0.0.30 Windows 7 Pro
http://www.meteo-jarny.com/

Répondre