les records un mois donné

Forum destiné aux problèmes de Tags, recherche d’une fonction, d’un calcul, Tag qui parait ne pas fonctionner, du Tag et rien que du Tag !
Avatar du membre
webmaster
Site Admin
Site Admin
Messages : 2660
Enregistré le : 12 Déc 2006, 20:54
Localisation : Rieux 51 FRANCE
Contact :

Re: les records un mois donné

Messagepar webmaster » 02 Oct 2011, 12:38

Bonjour,
je fais un passage rapide avec le téléphone.
L'ensemble va rester très simple, si tu veux prendre de l'avançe renseigne toi sur les possibilités de ton hébergeur, phpmyadmin ou autre.
Cordialement

Rieux

Avatar du membre
kalimero
Participation 2
Participation 2
Messages : 191
Enregistré le : 25 Nov 2008, 13:54

Re: les records un mois donné

Messagepar kalimero » 02 Oct 2011, 14:37

Bonjour Rieux
Si tu met ton tag en ligne je suis preneur

Avatar du membre
webmaster
Site Admin
Site Admin
Messages : 2660
Enregistré le : 12 Déc 2006, 20:54
Localisation : Rieux 51 FRANCE
Contact :

Re: les records un mois donné

Messagepar webmaster » 02 Oct 2011, 21:24

Bonsoir,
Tudgur a écrit :Je dois avouer que je ne comprends pas ! :oops:
Quelle(s) manip(s) fais-tu avec Wswin pour avoir l'ensemble des extrêmes ?
La mise en place de ton travail sera-t-elle "délicate" ?
Pourra-ton choisir les variables à mémoriser/afficher ?
Bon dimanche.

Rien de plus simple, voici le code pour avoir la valeur, la date et l'heure des mesures les plus basses du jour où est utilisé le code sur les 5 dernières années.

Code : Tout sélectionner

    $wswin_2006_temp_min='%minvalpast[6~%ws_day2%~%ws_month2%~2006]%';
    $wswin_2006_date_temp_min='%mindatepast[6~%ws_day2%~%ws_month2%~2006]%';
    $wswin_2006_heure_temp_min='%mintimepast[6~%ws_day2%~%ws_month2%~2006]%';
    $wswin_2007_temp_min='%minvalpast[6~%ws_day2%~%ws_month2%~2007]%';
    $wswin_2007_date_temp_min='%mindatepast[6~%ws_day2%~%ws_month2%~2007]%';
    $wswin_2007_heure_temp_min='%mintimepast[6~%ws_day2%~%ws_month2%~2007]%';
    $wswin_2008_temp_min='%minvalpast[6~%ws_day2%~%ws_month2%~2008]%';
    $wswin_2008_date_temp_min='%mindatepast[6~%ws_day2%~%ws_month2%~2008]%';
    $wswin_2008_heure_temp_min='%mintimepast[6~%ws_day2%~%ws_month2%~2008]%';
    $wswin_2009_temp_min='%minvalpast[6~%ws_day2%~%ws_month2%~2009]%';
    $wswin_2009_date_temp_min='%mindatepast[6~%ws_day2%~%ws_month2%~2009]%';
    $wswin_2009_heure_temp_min='%mintimepast[6~%ws_day2%~%ws_month2%~2009]%';
    $wswin_2010_temp_min='%minvalpast[6~%ws_day2%~%ws_month2%~2010]%';
    $wswin_2010_date_temp_min='%mindatepast[6~%ws_day2%~%ws_month2%~2010]%';
    $wswin_2010_heure_temp_min='%mintimepast[6~%ws_day2%~%ws_month2%~2010]%';
    $wswin_temp_min='%minvalpast[6~%ws_day2%~%ws_month2%~%ws_year%]%';
    $wswin_date_temp_min='%ws_date%';
    $wswin_heure_temp_min='%mintimepast[6~%ws_day2%~%ws_month2%~%ws_year%]%';

Il ne te reste plus qu'à comparer l'ensemble de ces mesures en PHP et n'en garder que la plus basse avant de l'enregistrer dans la base.

Code : Tout sélectionner

if ($temp_min > $wswin_2006_temp_min) {$temp_min=$wswin_2006_temp_min; $date_temp_min=$wswin_2006_date_temp_min; $heure_temp_min=$wswin_2006_heure_temp_min;}
if ($temp_min > $wswin_2007_temp_min) {$temp_min=$wswin_2007_temp_min; $date_temp_min=$wswin_2007_date_temp_min; $heure_temp_min=$wswin_2007_heure_temp_min;}
if ($temp_min > $wswin_2008_temp_min) {$temp_min=$wswin_2008_temp_min; $date_temp_min=$wswin_2008_date_temp_min; $heure_temp_min=$wswin_2008_heure_temp_min;}
Idem jusqu'à aujourd'hui....

Au bout d'un an seul la valeur enregistrée dans la base sera comparée à la valeur du moment et le code s'en retrouva très allégé.
Il n'y a vraiment rien de compliqué à mettre en place.
Comme je te le disais dans l'après midi, vois déjà les possibilitée qu'offre ton hébergeur pour travailler en PHP et accéder à une base Sql.
Cordialement



Rieux

Avatar du membre
webmaster
Site Admin
Site Admin
Messages : 2660
Enregistré le : 12 Déc 2006, 20:54
Localisation : Rieux 51 FRANCE
Contact :

Re: les records un mois donné

Messagepar webmaster » 02 Oct 2011, 21:24

Bonsoir,
kalimero a écrit :Bonjour Rieux
Si tu met ton tag en ligne je suis preneur

Idem que mon message précédent !
Cordialement



Rieux

Tudgur
Participation 6
Participation 6
Messages : 1652
Enregistré le : 13 Mai 2007, 16:47
Localisation : 29880 Plouguerneau
Contact :

Re: les records un mois donné

Messagepar Tudgur » 02 Oct 2011, 22:14

Bonsoir,
webmaster a écrit :Rien de plus simple, voici le code pour avoir la valeur, la date et l'heure des mesures les plus basses du jour où est utilisé le code sur les 5 dernières années.

Pour le code wswin, pas de problème, à préparer pour toutes les variables souhaitées...
webmaster a écrit :
Il ne te reste plus qu'à comparer l'ensemble de ces mesures en PHP et n'en garder que la plus basse avant de l'enregistrer dans la base.

Code : Tout sélectionner

if ($temp_min > $wswin_2006_temp_min) {$temp_min=$wswin_2006_temp_min; $date_temp_min=$wswin_2006_date_temp_min; $heure_temp_min=$wswin_2006_heure_temp_min;}
if ($temp_min > $wswin_2007_temp_min) {$temp_min=$wswin_2007_temp_min; $date_temp_min=$wswin_2007_date_temp_min; $heure_temp_min=$wswin_2007_heure_temp_min;}
if ($temp_min > $wswin_2008_temp_min) {$temp_min=$wswin_2008_temp_min; $date_temp_min=$wswin_2008_date_temp_min; $heure_temp_min=$wswin_2008_heure_temp_min;}
Idem jusqu'à aujourd'hui....

Au bout d'un an seul la valeur enregistrée dans la base sera comparée à la valeur du moment et le code s'en retrouva très allégé.

Là je ne suis pas sûr de comprendre.
Dans cette première ligne :

Code : Tout sélectionner

if ($temp_min > $wswin_2006_temp_min) {$temp_min=$wswin_2006_temp_min; $date_temp_min=$wswin_2006_date_temp_min; $heure_temp_min=$wswin_2006_heure_temp_min;}

tu utilises la variable $temp_min au tout début (après if), alors qu'elle n'est définie que plus tard, après l'accolade...
Mais encore une fois, je ne connais que très peu le PHP...
Pour $heure_temp_min=$wswin_2006_heure_temp_min; il n'y a pas besoin de guillemets ? Ce sera au format hh:mm, donc une chaîne...
webmaster a écrit :Il n'y a vraiment rien de compliqué à mettre en place.
Comme je te le disais dans l'après midi, vois déjà les possibilitée qu'offre ton hébergeur pour travailler en PHP et accéder à une base Sql.

Je n'ai pas réussi à trouver. Il y a bien une base MySQL (utilisée en partie par Piwik) à la quelle j'accède je ne sais plus trop comment pour la vider de temps en temps, quand PhpNux me dit que j'ai dépassé le "poids" autorisé.
Je vais fouiller.

Edit : j'ai bien PhpMyAdmin chez mon hébergeur.
Cordialement.

Tudgur
http://meteo-plouguerneau.fr

Avatar du membre
webmaster
Site Admin
Site Admin
Messages : 2660
Enregistré le : 12 Déc 2006, 20:54
Localisation : Rieux 51 FRANCE
Contact :

Re: les records un mois donné

Messagepar webmaster » 03 Oct 2011, 08:59

Bonjour,
Tudgur a écrit :Bonsoir,
Pour le code wswin, pas de problème, à préparer pour toutes les variables souhaitées...

Oui bien évidement, et en fait il n'y en a pas tant que çà.

Tudgur a écrit :Là je ne suis pas sûr de comprendre.
tu utilises la variable $temp_min au tout début (après if), alors qu'elle n'est définie que plus tard, après l'accolade...

Oui, aussi loin que remonte mes souvenirs en programmation, si a = 1, tu peux très bien écrire a = a + 2 qui donnera une valeur de 3 à la variable a, et pour pousser encore plus loin la démonstration a = a + a donnera 2. La variable a ne prendra une nouvelle valeur qu'à la fin de l'opération, tu peux donc l'utiliser plusieurs fois dans ton calcul.

Tudgur a écrit :Pour $heure_temp_min=$wswin_2006_heure_temp_min; il n'y a pas besoin de guillemets ? Ce sera au format hh:mm, donc une chaîne...

Les guillemets ne sont utiles que lorsque tu imputes une chaîne à une variable, quand tu la traites ensuite peu importe son contenu.

Tudgur a écrit :Edit : j'ai bien PhpMyAdmin chez mon hébergeur.


Génial !
Alors tu vas voir, c'est très simple.
Sur la page d'accueil de Phpmyadmin, tu as formulaire "Créer une base de données", dans le premier champs tu mets extremes et dans le second UTF8_bin, puis le bouton créer.
Ta base est maintenant créée !
Il faut maintenant construire la table.
Dans cette nouvelle page tu dois nommer cette table ainsi que donner le nombre de ligne qu'elle comportera. Cela correspond au nombre de variable que tu utiliseras plus une qui te servira d’identificateur. Rien ne sera figé après cette étape et tu pourras très facilement supprimer ou ajouter de nouvelles ligne postérieurement.
Nous appellerons la table mois et nous mettrons 4 lignes pour commencer, ensuite cliquer sur le bouton créer.
Voilà ta base est presque prête, il ne reste plus qu'à configurer tes différentes variables.

La première sera nommée id, type smallint , taille 6.
La seconde temp_min, type float, défaut tel que définit et en dessous 50.
La troisième date_temp_min, type varchar, taille 10, interclassement utf_bin
La quatrième heure_temp_min, idem que la précédente puis le bouton sauvegarder.

Petite explication pour la spécificité de la ligne deux. Par défaut si aucune valeur n'est imputé, c'est la valeur 0 qui est prise. Vu qu'il s'agit de la température minimum il faut en mettre une qui soit largement improbable de manière a se que le teste qui suivra en PHP soit fonctionnel.
Il faudra utiliser le même principe pour la pression minimum avec une valeur de 2000 par exemple.
Pour les différente autres variables tu peux laisser la cellule vide.

Je vais te laisser en arriver là pour voir si c'est clair.
Cordialement



Rieux

Tudgur
Participation 6
Participation 6
Messages : 1652
Enregistré le : 13 Mai 2007, 16:47
Localisation : 29880 Plouguerneau
Contact :

Re: les records un mois donné

Messagepar Tudgur » 03 Oct 2011, 09:34

Merci beaucoup.

Tes explications me semblent suffisamment précises.
Je te tiens au courant...

Edit : aïe aïe aïe ! J'ai déjà une base, et à priori je ne peux pas en créer d'autre !!!

Image

Par contre, je peux créer une table...
Et dans une table, je peux créer des colonnes mais pas de lignes...
C'est foutu ou pas ?

Edit2 : je viens pourtant de trouver ceci :

Image

Edit 3 :
J'ai trouvé ceci :
[code]CREATE DATABASE [IF NOT EXISTS] db_name
[create_specification [, create_specification] ...]

create_specification:
[DEFAULT] CHARACTER SET charset_name
| [DEFAULT] COLLATE collation_name/code]
ça peut servir ?
Modifié en dernier par Tudgur le 03 Oct 2011, 10:11, modifié 1 fois.
Cordialement.

Tudgur
http://meteo-plouguerneau.fr

Avatar du membre
kalimero
Participation 2
Participation 2
Messages : 191
Enregistré le : 25 Nov 2008, 13:54

Re: les records un mois donné

Messagepar kalimero » 03 Oct 2011, 10:07

Bonjour Rieux
J'essai de suivre les instructions en même temps
j'ai crer la base
mais je ne sait pas comment envoyer les données dans celle çi

Avatar du membre
webmaster
Site Admin
Site Admin
Messages : 2660
Enregistré le : 12 Déc 2006, 20:54
Localisation : Rieux 51 FRANCE
Contact :

Re: les records un mois donné

Messagepar webmaster » 03 Oct 2011, 11:31

Tudgur a écrit :Par contre, je peux créer une table...
Et dans une table, je peux créer des colonnes mais pas de lignes...
C'est foutu ou pas ?


A priori je dirai que non !
Tu es probablement limité à une seule et unique base contrairement à l'indication que l'on peut voir si tes captures.
La FAQ de ton registar n'est pas très explicite, mais tu peux probablement te renseigner par mail auprès d'eux.
Je viens de regarder chez Free chez lequel j'ai divers comptes et là de la même manière je ne suis pas limité en table mais comme toi je ne peux pas ajouter de base.

Alors pour ton cas on pourrait penser également à un problème de privilèges, mais tu ne pourrait rien créer.
Je ne comprends pas pourquoi une fois la table et la colonne créée tu ne peux pas ajouter de ligne !
Peux-tu nous faire une capture de ce moment ?
Car tu as une surcouche sur PHPmyadmin qui n'a pas son apparence habituelle.

Kaliméro je continue quand vous en serez au même point.
Cordialement



Rieux

Tudgur
Participation 6
Participation 6
Messages : 1652
Enregistré le : 13 Mai 2007, 16:47
Localisation : 29880 Plouguerneau
Contact :

Re: les records un mois donné

Messagepar Tudgur » 03 Oct 2011, 12:42

Finalement, j'ai réussi à créer une base mais je n'ai plus accès à PhpMyAdmin !!!
J'envoie un mail chez PhpNux...

Edit : voilà, PhpMyAdmin refonctionne, mais pour l'instant je vais profiter des derniers rayons du soleil pour aujourd'hui, les nuages arrivent à grande vitesse...

Edit 2 : à priori, c'est fait mais avec utf8_bin et non pas utf_bin pour les lignes 3 et 4.
bizarrement, chez mois les lignes s'appellent des colonnes...
Modifié en dernier par Tudgur le 03 Oct 2011, 15:24, modifié 1 fois.
Cordialement.

Tudgur
http://meteo-plouguerneau.fr

Avatar du membre
webmaster
Site Admin
Site Admin
Messages : 2660
Enregistré le : 12 Déc 2006, 20:54
Localisation : Rieux 51 FRANCE
Contact :

Re: les records un mois donné

Messagepar webmaster » 03 Oct 2011, 14:44

Tu as bien raison, idem ici, tondeuse ce matin et plus cool cet après midi pour profiter un peu avant qu'il soit trop tard.
Cordialement



Rieux

Avatar du membre
vals
Participation 5
Participation 5
Messages : 808
Enregistré le : 13 Déc 2006, 20:27
Localisation : 69320 Feyzin
Contact :

Re: les records un mois donné

Messagepar vals » 03 Oct 2011, 15:01

Je veux pas dire mais ça en fait des cotisations à payer tout ça !! :cool:
Ok je :arrow:
Image
Davis VantagePro2 + Wswin32 V2.96.10 + GraphWeather + ftp-uploader. Webcam.

Tudgur
Participation 6
Participation 6
Messages : 1652
Enregistré le : 13 Mai 2007, 16:47
Localisation : 29880 Plouguerneau
Contact :

Re: les records un mois donné

Messagepar Tudgur » 03 Oct 2011, 15:53

vals a écrit :Je veux pas dire mais ça en fait des cotisations à payer tout ça !! :cool:
Ok je :arrow:

Salut Vals,

Moi aussi j'ai cotisé, ...quand j'étais jeune !!!
On ne peut pas tout avoir.
Cordialement.

Tudgur
http://meteo-plouguerneau.fr

Avatar du membre
webmaster
Site Admin
Site Admin
Messages : 2660
Enregistré le : 12 Déc 2006, 20:54
Localisation : Rieux 51 FRANCE
Contact :

Re: les records un mois donné

Messagepar webmaster » 03 Oct 2011, 16:27

Et moi je cotise encore....

Bon reprenons !
Une fois que la base, la table et les lignes sont créées nous pouvons attaquer le vif du sujet.

Vous devez avoir un onglet insérer (ou éventuellement une icône en face de la ligne correspondant au nom de la base), cliquez le.
Une page de saisie s'affiche montrant théoriquement par défaut la possibilité de saisir deux lignes dans la table, (soit huit variables).
Dans la cellule correspondant à l'ID vous allez mettre 277 pour la première et 278 pour la seconde, puis n'importe lequel des boutons exécuter.
Vous pouvez recommencer l'exercice avec 279 et 280, 281 et 282, il faudra de toutes manières le faire de 1 à 366, mais ultérieurement.
Il faut également le faire avec 1001 et 1002 jusqu'à 1012.
Vous l'aurez sans doute devinez, cela correspond au jours et au mois.
Cordialement



Rieux

Avatar du membre
kalimero
Participation 2
Participation 2
Messages : 191
Enregistré le : 25 Nov 2008, 13:54

Re: les records un mois donné

Messagepar kalimero » 03 Oct 2011, 18:27

Faut t'il rentrer les années à l'identique


Retourner vers « tags »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 2 invités