Demande tutoriel mysql avec ws2350
Demande tutoriel mysql avec ws2350
Bonjour, je suis nouveau sur le forum.
Je commence la php et mysql, existe-t-il un tutoriel pour l'utilisation de graphweather avec mysql ou quelqu'un peut m'expliquer succinctement.
Mon gros problème est que je n'arrive pas à envoyer mes données de ma station WS2350 vers ma table.
Merci pour vos éventuels réponse
Je commence la php et mysql, existe-t-il un tutoriel pour l'utilisation de graphweather avec mysql ou quelqu'un peut m'expliquer succinctement.
Mon gros problème est que je n'arrive pas à envoyer mes données de ma station WS2350 vers ma table.
Merci pour vos éventuels réponse
- jturlier
- Membre
- Messages : 3149
- Inscription : mar. août 22, 2006 8:38 am
- Localisation : 34410 Sérignan - Languedoc
- Contact :
Re: Demande tutoriel mysql avec ws2350
Bonjour,
pour envoyer des données de ta station vers une table, il faut que le logiciel qui pilote ta station soit prévu pour le faire. La question qui se pose est donc : quel est-il ? Je ne savais pas qu'il en existait dans le commerce.
Jean
pour envoyer des données de ta station vers une table, il faut que le logiciel qui pilote ta station soit prévu pour le faire. La question qui se pose est donc : quel est-il ? Je ne savais pas qu'il en existait dans le commerce.
Jean
Re: Demande tutoriel mysql avec ws2350
Le logiciel qui utilise les données de la station est heavyweather. Mais il n'est pas prévu pour envoyer les données dans une table enfin je pense.
Il enregistre en auto dans le fichier history.dat et curdast.lst pour le temps réel.
Mais c'est tout.
Donc c'est pas possible...?
Il enregistre en auto dans le fichier history.dat et curdast.lst pour le temps réel.
Mais c'est tout.
Donc c'est pas possible...?
- jturlier
- Membre
- Messages : 3149
- Inscription : mar. août 22, 2006 8:38 am
- Localisation : 34410 Sérignan - Languedoc
- Contact :
Re: Demande tutoriel mysql avec ws2350
Bonjour,
pas possible uniquement avec ça.
Jean
pas possible uniquement avec ça.
Jean
- pat46fr
- Membre
- Messages : 173
- Inscription : mar. juil. 20, 2010 6:23 pm
- Localisation : Vers-sur-lot (46)
- Contact :
Re: Demande tutoriel mysql avec ws2350
Heeu, les programmes qu'il y a ici http://www.aguilmard.com/index.php?page=graphweatherphp permettent de récupérer les données du history.dat et de les injecter dans une table. Il y a la version WS2300 et la WS3600. J'ai récupéré les données de ma WS3650 avec ces fichiers. C'est long mais ça marche. Seul problème que j'ai, c'est que les données stockées dans la database ont 2 heures de trop (par exp 22h00 au lieu de 20h00 pour l'heure du relevé) alors que dans le history c'est OK. Si Titoine passe par là, me semble que c'est au niveau de la conversion avec Delphi que ça coince. D'ailleurs si quelqu'un pouvait me tuyauter sur cette heure Delphi je suis preneur. Quelle différence avec le timestamp Unix?
Merci, Pat
Merci, Pat
- jturlier
- Membre
- Messages : 3149
- Inscription : mar. août 22, 2006 8:38 am
- Localisation : 34410 Sérignan - Languedoc
- Contact :
Re: Demande tutoriel mysql avec ws2350
Le timestamp Unix démarre le 1/1/1970.pat46fr a écrit :D'ailleurs si quelqu'un pouvait me tuyauter sur cette heure Delphi je suis preneur. Quelle différence avec le timestamp Unix?
Merci, Pat
Ds history.dat les dates sont référencées par rapport au 1/1/1900.
Le paramètre delphi1970 représente le nombre de jours entre le 1/1/1970 et le 1/1/1900.
Les données sont correctes ds history, cela ne signifie pas que les fichiers WS3600 et WS3650 sont créés exactement de la même façon !!!!!!pat46fr a écrit :Seul problème que j'ai, c'est que les données stockées dans la database ont 2 heures de trop (par exp 22h00 au lieu de 20h00 pour l'heure du relevé) alors que dans le history c'est OK.
Cela semble indiquer que le décalage horaire est inclus, ce qui n'est pas le cas avec la WS3600 (fichier en UTC). Tu as tjs la possibilité de modifier les heures en ôtant 7200 s ou 3600 en fonction de l'heure d'été ou d'hiver. Il existe des fonctions PHP qui peuvent aider à traiter ce pb.
Jean
- pat46fr
- Membre
- Messages : 173
- Inscription : mar. juil. 20, 2010 6:23 pm
- Localisation : Vers-sur-lot (46)
- Contact :
Re: Demande tutoriel mysql avec ws2350
Merci, c'est tout ce que je voulais savoir.Le timestamp Unix démarre le 1/1/1970.
Ds history.dat les dates sont référencées par rapport au 1/1/1900.

Tout à fait d'accord. Si je comprends tout bien, l'history.dat enregistrerai en tenant compte de heure été/ heure hiver. Je vais essayer de trouver le truc pour remettre ça aux bonnes valeurs. Apparemment en utilisant le paramètre i de la fonction date on récupère si c'est été ou hiver. Après comme tu dis suffit d'enlever 3600 ou 7200 suivant le cas.Le timestamp Unix démarre le 1/1/1970.
Ds history.dat les dates sont référencées par rapport au 1/1/1900.
J'y retourne.
Merci encore, Pat
- pat46fr
- Membre
- Messages : 173
- Inscription : mar. juil. 20, 2010 6:23 pm
- Localisation : Vers-sur-lot (46)
- Contact :
Re: Demande tutoriel mysql avec ws2350
bon apparemment j'ai trouvé le petit truc pour remettre mes heures à l'heure. Si ça intéresse du monde je mettrais le bout de code (qui est de ma fabrication, ya mieux ans doute mais ça a l'air de marcher, c'est l'essentiel).
Pat
Pat
- jturlier
- Membre
- Messages : 3149
- Inscription : mar. août 22, 2006 8:38 am
- Localisation : 34410 Sérignan - Languedoc
- Contact :
Re: Demande tutoriel mysql avec ws2350
Bonjour Pat,pat46fr a écrit :bon apparemment j'ai trouvé le petit truc pour remettre mes heures à l'heure. Si ça intéresse du monde je mettrais le bout de code (qui est de ma fabrication, ya mieux ans doute mais ça a l'air de marcher, c'est l'essentiel).
Pat
si tu peux mettre ta correction et les lignes concernées, ça m'intéresse.
Il y a cependant dans tout ceci un point qui me chagrine :
La ws2300 utilise un "timestamp" type delphi qui n'intègre pas de décalage horaire, on est donc en mode UTC et les TS Unix résultants sont "purs" (démarrage 01/01/1970 00:00:00 UTC).
La ws2350 SI son timestamp reflète bien le décalage horaire fera perdre 1 heure de données au passage à l'heure d'hiver (le passage de 3:00 à 2:00). il ne devrait pas y avoir de pb pour la passage à l'heure d'été.
Ceci ne pourra sans doute être vu qu'aux changements d'horaire ! A mon avis, ce sera un point à vérifier.
J'ai un pb en VB.net qui charge une DB à partir des fichiers de la WS2300 (entre autres), et j'ai fait les modifs pour traiter aussi la WS2350, c'est ce qui m'a incité soulever ce point de détail.
Jean
- pat46fr
- Membre
- Messages : 173
- Inscription : mar. juil. 20, 2010 6:23 pm
- Localisation : Vers-sur-lot (46)
- Contact :
Re: Demande tutoriel mysql avec ws2350
ok, je mets mais AVERTISSEMENT: c'est un truc de ma composition, actuellement ça récupère le décalage des deux heures d'été et comme tu dis faudrat voir le comportement au passage à l'heure d'hiver. Je sais pas du tout si ça marchera, si c'est pas bon, je m'y replongerai à ce moment là. Ya sans doute mieux comme solution mais j'avoue que j'ai du mal avec ces dates (6 mois que je me suis mis au PHP et SQL). Donc si quelqu'un a mieux, je suis pas jaloux, lol.
A toutes les lignes qui font appel à une date du style:
Pat
A toutes les lignes qui font appel à une date du style:
j'ai rajouté ça:$LAST_HISTORYDAT_RECORD=(($date[1] -$DELPHI1970)*86400); //delphi/unix conversion
Voilà, c'est tout. Si vous avez des observations, je suis preneur.$saison = date('I',$LAST_HISTORYDAT_RECORD); //on recupere la valeur qui indique ete ou hiver
if ($saison ==1)
{
$LAST_HISTORYDAT_RECORD = $LAST_HISTORYDAT_RECORD -7200; // cas ete
}
else
{
$LAST_HISTORYDAT_RECORD = $LAST_HISTORYDAT_RECORD -3600; // cas hiver
}
Pat
- pat46fr
- Membre
- Messages : 173
- Inscription : mar. juil. 20, 2010 6:23 pm
- Localisation : Vers-sur-lot (46)
- Contact :
Re: Demande tutoriel mysql avec ws2350
pat46fr a écrit :ok, je mets mais AVERTISSEMENT: c'est un truc de ma composition, actuellement ça récupère le décalage des deux heures d'été et comme tu dis faudrat voir le comportement au passage à l'heure d'hiver. Je sais pas du tout si ça marchera, si c'est pas bon, je m'y replongerai à ce moment là. Ya sans doute mieux comme solution mais j'avoue que j'ai du mal avec ces dates (6 mois que je me suis mis au PHP et SQL). Donc si quelqu'un a mieux, je suis pas jaloux, lol.
A toutes les lignes qui font appel à une date du style:j'ai rajouté ça:$LAST_HISTORYDAT_RECORD=(($date[1] -$DELPHI1970)*86400); //delphi/unix conversionVoilà, c'est tout. Si vous avez des observations, je suis preneur.$saison = date('I',$LAST_HISTORYDAT_RECORD); //on recupere la valeur qui indique ete ou hiver
if ($saison ==1)
{
$LAST_HISTORYDAT_RECORD = $LAST_HISTORYDAT_RECORD -7200; // cas ete
}
else
{
$LAST_HISTORYDAT_RECORD = $LAST_HISTORYDAT_RECORD -3600; // cas hiver
}
Je précise que je travaille sur une WS3650, les formats de fichiers history sont pas les mêmes mais pour un calcul de ce style pas grave. Si ya besoin, ça marchera quand même je pense puisque c'est le PHP qui modifie la valeur de départ.
Pat
- jturlier
- Membre
- Messages : 3149
- Inscription : mar. août 22, 2006 8:38 am
- Localisation : 34410 Sérignan - Languedoc
- Contact :
Re: Demande tutoriel mysql avec ws2350
Bonsoir,
on devrait pouvoir simplifier un peu le code ci-dessus comme suit :
$saison = date('I',$LAST_HISTORYDAT_RECORD); //on recupere la valeur qui indique ete ou hiver
$LAST_HISTORYDAT_RECORD -= (3600 +($saison*3600)); // cas ete/hiver
A vérifier qd même !
Jean
on devrait pouvoir simplifier un peu le code ci-dessus comme suit :
$saison = date('I',$LAST_HISTORYDAT_RECORD); //on recupere la valeur qui indique ete ou hiver
$LAST_HISTORYDAT_RECORD -= (3600 +($saison*3600)); // cas ete/hiver
A vérifier qd même !
Jean
- pat46fr
- Membre
- Messages : 173
- Inscription : mar. juil. 20, 2010 6:23 pm
- Localisation : Vers-sur-lot (46)
- Contact :
Re: Demande tutoriel mysql avec ws2350
La modif est faite, c'est OK pour l'heure d'été, reste à attendre le passage à l'heure d'hiver et à croiser les doigts, lol.
Pat
Pat