comparaison

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
kalimero
Participation 2
Participation 2
Messages : 183
Enregistré le : 25 nov. 2008, 13:54

comparaison

Message par kalimero » 08 juil. 2011, 17:26

Bonjour à tous
je cherche depuis pas mal de temps la soluce pour la réalisation de ce tag

si je suis en hiver et que la température exterieur est =< -15°C alors on affiche ( hyper glaciale)
si je suis en hiver et que la température exterieur et comprise entre -15 et -10 (glaciale)
si je suis en hiver et que la température exterieur et comprise entre -10 et -5 (trés froid)
si je suis en hiver et que la température exterieur et comprise entre ext... ext ...

La même chose si je suis en été , en automne , au primtemps (forcement pas avec les mêmes températures et le même affichage)
Merci d'avance de votre aide car la je cale grave
un dégrossie en php mais ne fonctionne pas
je n'arrive pas à associer le tout

[code<?php /* Date de cr?ion: 07/04/2011 */ ?>
<html>
%alwaysseppoint_on%

<body>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
%unit_off%



<table cellspacing="3" cellpadding="2" border="0">

<td>
<?php

$mois = %ws_month2%;//pour determiner la position du Mois//
$temperature = %curval[2]%;//Donne la temperature actuellement//


//Partie qui donne la sensation ressentie //
if($temperature <= '-25') {$commentaire='Glaciale';}
elseif($temperature > '-25' && $temperature <= '-20') $commentaire='Glaciale';
elseif($temperature > '-20' && $temperature <= '-15') $commentaire='Glaciale';
elseif($temperature > '-15' && $temperature <= '-10') $commentaire='Glaciale';
elseif($temperature > '-10' && $temperature <= '-5') $commentaire='Glaciale';
elseif($temperature > '-5' && $temperature <= '0') $commentaire='Glaciale';
elseif($temperature > '0' && $temperature <= '5') $commentaire='Froide';
elseif($temperature > '5' && $temperature <= '10') $commentaire='Froide';
elseif($temperature > '10' && $temperature <= '15') $commentaire='Agréable';
elseif($temperature > '15' && $temperature <= '20') $commentaire='Agréable';
elseif($temperature > '20' && $temperature <= '25') $commentaire='Agréable';
elseif($temperature > '25' && $temperature <= '30') $commentaire='Chaude';
elseif($temperature > '30' && $temperature <= '35') $commentaire='Estivale';
elseif($temperature > '35' && $temperature <= '40') $commentaire='Canicule';
elseif($temperature > '40') $commentaire='Canicule';



//partie qui selectionne le mois en cours//
if ($mois == '01') {$month='de Janvier';}
elseif($mois == '02') $month='de Fevrier';
elseif($mois == '03') $month='de Mars';
elseif($mois == '04') $month='d\'avril';
elseif($mois == '05') $month='de Mai';
elseif($mois == '06') $month='de Juin';
elseif($mois == '07') $month='de Juillet';
elseif($mois == '08') $month='d\'Aout';
elseif($mois == '09') $month='de Septembre';
elseif($mois == '10') $month='d\'Octobre';
elseif($mois == '11') $month='de Novembre';
elseif($mois == '12') $month='de Decembre';

//partie qui selectionne la saison//
if($mois >= '03'&& $mois <= '06') {$saison='Ce primtemps';}
elseif($mois == '07') $saison='Ce Primptemps';
elseif($mois == '08') $saison='Cette Ete';
elseif($mois == '09') $saison='Cette automne';
elseif($mois == '10') $saison='Cette automne';
elseif($mois == '11') $saison='Cette Hiver';
elseif($mois == '12') $saison='Cette Hiver';


</td></table>




</body>

</html>][/code]

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

Re: comparaison

Message par webmaster » 08 juil. 2011, 20:48

Bonsoir,

Perso je n'aborderai pas le problème de cette manière !

Je pense qu'il est plus simple de travailler en jour, le mois en cours n'apporte rien au problème et encore moins à la sélection de saison.
Tu devrais déjà faire un premier test sur le jour avec une comparaison de 0 à 80 c'est l'hiver de 81 à 200 c'est le printemps.....(Je le fais à la louche bien évidement).
Tu imputes en même temps une variable pour le test suivant, par exemple $saison peut devenir, hiver, printemps.....
Ensuite tu fais un include $saison (un autre fichier PHP ou le format de ton choix) insérant le test de température correspondant à la saison, car 10° degrés en hiver c'est plutôt sympa mais frais en été.

Tu cherches à en faire trop avec WsWin qui pour le coup n'a que la température à donner, tout le reste c'est du PHP, le jour, la saison, il fait chaud ou froid.

Bon courage.
Cordialement

Rieux

Avatar du membre
kalimero
Participation 2
Participation 2
Messages : 183
Enregistré le : 25 nov. 2008, 13:54

Re: comparaison

Message par kalimero » 09 juil. 2011, 09:53

Bonjour rieux
Comme tu le sait je ne suis pas un expert en php et je ne comprend pas la suite de ta reponse
""Tu imputes en même temps une variable pour le test suivant, par exemple $saison peut devenir, hiver, printemps.....
Ensuite tu fais un include $saison (un autre fichier PHP ou le format de ton choix) insérant le test de température ""
J'ai modifier le fichier avec les jours de l'année
Peut tu m'eclairais un peut pour la suite


Code : Tout sélectionner

<!-- %customfile=temps.php% -->
<!-- %openfile=custom_.txt% -->

<?php /* Date de cr?ion: 07/04/2011 */ ?>
<html>
%alwaysseppoint_on%

<body>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
%unit_off%



<table cellspacing="3" cellpadding="2" border="0">

<td> 
<?php 
$jour = %ws_dayyear%;//pour determiner le jour de l'année//
$$heure = %ws_hour%;///pour determiner l'heure de la journée//
$temperature = %curval[2]%;//Donne la temperature exterieur actuellement//


//Partie qui donne la sensation ressentie au vent// [color=#FF4000]valable pour n'importe quelle saison pour l'instant [/color]if($temperature <= '-25') {$commentaire='Glaciale';}
elseif($temperature > '-25' && $temperature <= '-20') $commentaire='Glaciale';
elseif($temperature > '-20' && $temperature <= '-15') $commentaire='Glaciale'; 
elseif($temperature > '-15' && $temperature <= '-10') $commentaire='Glaciale'; 
elseif($temperature > '-10' && $temperature <= '-5') $commentaire='Glaciale'; 
elseif($temperature > '-5' && $temperature <= '0') $commentaire='Glaciale'; 
elseif($temperature > '0' && $temperature <= '5') $commentaire='Froide'; 
elseif($temperature > '5' && $temperature <= '10') $commentaire='Froide'; 
elseif($temperature > '10' && $temperature <= '15') $commentaire='Agréable'; 
elseif($temperature > '15' && $temperature <= '20') $commentaire='Agréable'; 
elseif($temperature > '20' && $temperature <= '25') $commentaire='Agréable'; 
elseif($temperature > '25' && $temperature <= '30') $commentaire='Chaude';
elseif($temperature > '30' && $temperature <= '35') $commentaire='Estivale'; 
elseif($temperature > '35' && $temperature <= '40') $commentaire='Canicule'; 
elseif($temperature > '40') $commentaire='Canicule';

//partie qui determine la position de la journ?/
if($heure >= '06' && $heure <= '12'){ $resultat='Pour Ce Matin';}
elseif($heure > '12' && $heure <= '18' )$resultat='Pour Cette Aprés Midi';
elseif($heure > '18' && $heure <= '22') $resultat='Pour cette fin de Journée';
elseif($heure > '22' && $heure <= '00') $resultat='Pour Cette Nuit';
elseif($heure > '00' && $heure <= '01') $resultat='Pour Cette Nuit';
elseif($heure > '01' && $heure <= '03') $resultat='Pour Cette Nuit';
elseif($heure > '03' && $heure <= '04') $resultat='Pour Cette Nuit';
elseif($heure > '04' && $heure <= '05') $resultat='Pour Cette Nuit';
elseif($heure > '05' && $heure <= '06') $resultat='Pour Cette Nuit';

//partie qui selectionne la saison en cours//
if ($jour > '79'&& $jour <= '171') {$saison='Ce Printemps';}
elseif($jour > '172'$jour <= '265') $saison='Cette Eté';
elseif($jour > '266'$jour <= '355') $saison='CetteAutomne';
elseif($jour > '366'$jour <= '78') $saison='Cette Hiver';




//affichage ? ecran//
echo  "$resultat $month <i> La températue Exterieur est de %curval[2]% °C La sensation ressentie est  $commentaire pour $saison "; ?></i>

</td></table>




</body>

</html>

Avatar du membre
kalimero
Participation 2
Participation 2
Messages : 183
Enregistré le : 25 nov. 2008, 13:54

Re: comparaison

Message par kalimero » 09 juil. 2011, 11:24

Peut étre un truc comme ça
dans un autre fichier php
<?php include("$saison.php"); ?>
if($saison.php == 'Cette Ete') &&($temperature > '17' && $temperature <= '18') {$commentaire='Pas tres chaud pour la saison';}
elseif($saison.php == 'Cette Ete') &&($temperature > '18' && $temperature <= '19') $commentaire='pas chaud pour la saison';
elseif($saison.php == 'Cette Ete') &&($temperature > '19' && $temperature <= '21') $commentaire='Agreable pour la saison';
echo = "la temperature actuel est $commentaire"; ?>
mais cela ne fonctionne pas

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

Re: comparaison

Message par webmaster » 09 juil. 2011, 12:57

Non pas vraiment !

Dans un premier temps il faut la température:

Code : Tout sélectionner

<?php
include("temp.php");
?>
Le fichier temp.php sera lui généré par WsWin avec un code dans ce genre.

Code : Tout sélectionner

$temp=%curval[2]%
Ensuite il faut trouver la saison actuelle afin de faire ta comparaison:

Code : Tout sélectionner

<?php
$moisjour = date("md");
if ($moisjour >= '1221') {$saison ='include("hiver.php")';
}
elseif ($moisjour >= '0923') {$saison ='include("automne.php")';
}
elseif ($moisjour >= '0621') {$saison ='include("ete.php")';
}
elseif ($moisjour >= '0320') {$saison ='include("printemps.php")';
}
else {$saison ='include('hiver.php'");
}
echo ($saison);
?>
Chacun des fichiers hiver, printemps, été et automne.php ne contiendront que le test de comparaison correspondant à la saison choisie, par exemple:

Code : Tout sélectionner

<?php
if ($temp < 0) {$result ='il fait glacial;
}
elseif ($temp > 0 and $temp < 10) {$result ='il fait froid';
}
elseif ($temp > 10 and $temp < 15) {$result ='il fait frais';
}
else ($temp > 40) {$result ='il trés chaud';
}
?>

Il ne te reste plus qu'à faire afficher le résultat.
<?php
echo ($result);
?>

Il y a probablement quelques erreurs qui trainent, je n'ai pas testé ces codes écrits à la volé.
Il y a divers solution afin d'arriver au but recherche, celle-ci en est une.
Il serait peut être judicieux de récupéré le nom de la saison afin de faire une phrase dans le genre "pour un $saison, avec $temp degrés, $result."

Voilà je te laisse peaufiner le problème j'ai un peu de boulot !
Bon courage.
Cordialement

Rieux

Avatar du membre
kalimero
Participation 2
Participation 2
Messages : 183
Enregistré le : 25 nov. 2008, 13:54

Re: comparaison

Message par kalimero » 09 juil. 2011, 13:10

Ok merçi à toi
Bonne journée

Avatar du membre
kalimero
Participation 2
Participation 2
Messages : 183
Enregistré le : 25 nov. 2008, 13:54

Re: comparaison

Message par kalimero » 12 juil. 2011, 10:15

Bonjour à tous
Rieux a commencer à m'eclairer dans la realisation de ma requette mais en ce môment il est occuper si quelq'un pouver me donner un coup de main merci
si j'ai bien compris voila ce que j'ai fait

1°) un fichier temp.php qui donne la temperature actuel
<!-- %customfile=curval.php% -->
<!-- %openfile=custom_.txt% -->


<?php /* Date de création: 12/07/2011 */ ?>
<html>
<body>

$temp=%curval[2]%
<?php
echo ($temp);
?>


</body>
</html>
2°) un fichier temps.php pour determiner la saison (ete,hiver ect..)
<!-- %customfile=temps.php% -->
<!-- %openfile=custom_.txt% -->
</td></table>

<?php
$moisjour = date("md");
if ($moisjour >= '1221') {$saison ='include("hiver.php")';
}
elseif ($moisjour >= '0923') {$saison ='include("automne.php")';
}
elseif ($moisjour >= '0621') {$saison ='include("ete.php")';
}
elseif ($moisjour >= '0320') {$saison ='include("printemps.php")';
}

?>

<?php
echo ($saison);
?>

</body>

<!-- %openfile=tempsdesaison.php% -->
</html>
3°) un fichier tempsdesaison.php
<!-- %customfile=tempsdesaison.php% -->
<!-- %openfile=custom_.txt% -->

</td></table>
<?php include ("ete.php"); ?>
<?php include("temp.php"); ?>
<?php
if ($temp < 12) {$result ='Plutot frais pour la saison';
}
elseif ($temp > 12 and $temp <14) {$result ='il fait frais pour la saison';
}
elseif ($temp > 15 and $temp < 22) {$result ='Enfin un peut de chaleur';
}
elseif ($temp > 23 and $temp < 42) {$result ='il fait trés chaud';
}
?>
<?php
echo ($result);
?>
</body>
<!-- %openfile=curval.php% -->
</html>

mais cela ne fonctionne pas resultat
Warning: include(ete.php) [function.include]: failed to open stream: No such file or directory in /var/www/b/bo/bon/bonux50.perso.neuf.fr/public_html/ws_tempsdesaison.php on line 4

Warning: include() [function.include]: Failed opening 'ete.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/b/bo/bon/bonux50.perso.neuf.fr/public_html/ws_tempsdesaison.php on line 4

Warning: include(temp.php) [function.include]: failed to open stream: No such file or directory in /var/www/b/bo/bon/bonux50.perso.neuf.fr/public_html/ws_tempsdesaison.php on line 5

Warning: include() [function.include]: Failed opening 'temp.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/b/bo/bon/bonux50.perso.neuf.fr/public_html/ws_tempsdesaison.php on line 5
Plutot frais pour la saison

merci pour votre aide

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

Re: comparaison

Message par webmaster » 12 juil. 2011, 11:51

Reprenons:

Le fichier temp.php ne doit te donner que la température actuelle, et rien de plus !

Code : Tout sélectionner

<!-- %customfile=temp.php% -->
<!-- %openfile=custom_.txt% -->
$temp=%curval[2]%
Et surtout c'est le seul qui doit être généré par WsWin ! ! !

Ensuite tes différents fichiers correspondants à la comparaison saisonnière (un fichier par saison) ci-dessous un exemple du contenu du fichier ete.php:

Code : Tout sélectionner

<?php
if ($temp < 0) {$result ='il fait glacial';
}
elseif ($temp > 0 and $temp < 10) {$result ='il fait froid';
}
elseif ($temp > 10 and $temp < 15) {$result ='il fait frais';
}
elseif ($temp > 15 and $temp < 20) {$result ='il fait bon';
}
elseif ($temp > 20 and $temp < 25) {$result ='il fait chaud';
}
else {$result ='il fait trés chaud';
}
?>
Et la page qui génère l'affichage:

Code : Tout sélectionner

<head>
<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type">
</head>

<body>

    <?php
    include("temp.php";
    $moisjour = date("md");
    if ($moisjour >= '1221') {$saison = include("hiver.php");
    }
    elseif ($moisjour >= '0923') {$saison = include("automne.php");
    }
    elseif ($moisjour >= '0621') {$saison = include("ete.php");
    }
    elseif ($moisjour >= '0320') {$saison = include("printemps.php");
    }
    else {$saison = include("hiver.php");
    }
    echo ($result);
    ?>

</body>

</html>
Cordialement

Rieux

Avatar du membre
kalimero
Participation 2
Participation 2
Messages : 183
Enregistré le : 25 nov. 2008, 13:54

Re: comparaison

Message par kalimero » 13 juil. 2011, 09:52

Bonjour Rieux
J'ai suivie à la lettre tes explications voila se que j'obtient à l'affichage de mon fichier htlm

= '1221') {$saison = include("hiver.php"); } elseif ($moisjour >= '0923') {$saison = include("automne.php"); } elseif ($moisjour >= '0621') {$saison = include("ete.php"); } elseif ($moisjour >= '0320') {$saison = include("printemps.php"); } else {$saison = include("hiver.php"); } echo "($result)";?>

Ps :Bravo pour la nouvelle presentation du site

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

Re: comparaison

Message par webmaster » 13 juil. 2011, 10:21

Bonjour,

La page finale doit être une page PHP !

Il faudrait que tu nous donnes l'adresses des différents fichiers qui composent la page pour mieux cerner les erreurs.
Il y en a déjà une grosse là: http://bonux50.perso.neuf.fr/temp.php
Ce fichier doit être le seul généré par WsWin, donc le tag devrait-être remplacé par une valeur.

PS: la nouvelle présentation du forum et plus dû à un plantage lors de la mise à jour qu'un choix personnel, mail le principale est que rien ne soit perdu.
Cordialement

Rieux

Avatar du membre
kalimero
Participation 2
Participation 2
Messages : 183
Enregistré le : 25 nov. 2008, 13:54

Re: comparaison

Message par kalimero » 13 juil. 2011, 11:07

Bonjour
pour le tag depuis la version V2.96.7 wswin genere les fichiers php en (ws_temp.php)
le tag est bien generer http://bonux50.perso.neuf.fr/ws_temp.php
erreur suivante
<?php /* Date de création: 13/07/2011 */ ?>
<html>
<body>
<?php

include("ws_temp.php";
$moisjour = date("md");
if ($moisjour >= '1221') {$saison = include("hiver.php");
}
elseif ($moisjour >= '0923') {$saison = include("automne.php");
}
elseif ($moisjour >= '0621') {$saison = include("ete.php");
}
elseif ($moisjour >= '0320') {$saison = include("printemps.php");
}
else {$saison = include("hiver.php");
}
echo "($result)";?>


</body>
</html>
sur http://bonux50.perso.neuf.fr/lasaison.php
Modifié en dernier par kalimero le 13 juil. 2011, 11:18, modifié 1 fois.

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

Re: comparaison

Message par webmaster » 13 juil. 2011, 11:17

Ok, tu peux donc supprimer le fichier que j'ai mis en lien et qui ne sert donc à rien.
Donne nous également le lien des autres fichiers.
Cordialement

Rieux


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

Re: comparaison

Message par webmaster » 13 juil. 2011, 11:44

Il faudrait également le contenu des fichiers ete.php et lasaison.php.
Cordialement

Rieux

Avatar du membre
kalimero
Participation 2
Participation 2
Messages : 183
Enregistré le : 25 nov. 2008, 13:54

Re: comparaison

Message par kalimero » 13 juil. 2011, 20:16

Bonsoir
fichier ete.php
<?php /* Date de création: 13/07/2011 */ ?>
<html>
<body>
<?php
if($temperature <= '-25') {$commentaire='Glaciale';}
elseif($temperature > '-25' && $temperature <= '-20') $commentaire='Glaciale';
elseif($temperature > '-20' && $temperature <= '-15') $commentaire='Glaciale';
elseif($temperature > '-15' && $temperature <= '-10') $commentaire='Glaciale';
elseif($temperature > '-10' && $temperature <= '-5') $commentaire='Glaciale';
elseif($temperature > '-5' && $temperature <= '0') $commentaire='Glaciale';
elseif($temperature > '0' && $temperature <= '5') $commentaire='Froide';
elseif($temperature > '5' && $temperature <= '10') $commentaire='Pas chaud pour la saison';
elseif($temperature > '10' && $temperature <= '15') $commentaire='Pas chaud pour la saison';
elseif($temperature > '15' && $temperature <= '20') $commentaire='Enfin un peut de chaleur';
elseif($temperature > '20' && $temperature <= '25') $commentaire='Agréable';
elseif($temperature > '25' && $temperature <= '30') $commentaire='Chaude';
elseif($temperature > '30' && $temperature <= '35') $commentaire='Estivale';
elseif($temperature > '35' && $temperature <= '40') $commentaire='Canicule';
elseif($temperature > '40') $commentaire='Canicule';

?>
</body>
</html>
fichier lasaison.php
<?php /* Date de création: 13/07/2011 */ ?>
<html>
<body>
<?php

include("ws_temp.php";
$moisjour = date("md");
if ($moisjour >= '1221') {$saison = include("hiver.php");
}
elseif ($moisjour >= '0923') {$saison = include("automne.php");
}
elseif ($moisjour >= '0621') {$saison = include("ete.php");
}
elseif ($moisjour >= '0320') {$saison = include("printemps.php");
}
else {$saison = include("hiver.php");
}
echo "($result)";?>


</body>
</html>

Répondre