Page 1 sur 1

Vraiment débutant

Posté : 24 mai 2014, 09:25
par Landéda
Bonjour à tous
J'ai mis en place un site de météo que j'ai décidé de transformer un peu , j'ai donc été amené à essayer pour la première fois d'écrire un peu script
Celui que je vous soumets devait renvoyer la direction du vent sous la forme "N à NO" ... à partir de directions du type: 0,22,45.....
<? php
$dir=45;
if ($dir==0) {echo "N";}
elseif ($dir==22) {echo "N à NE";}
elseif ($dir==45) {echo "NE ";}
elseif ($dir==68) {echo "NE à E";}
elseif ($dir==90) {echo "E";}
elseif ($dir==112) {echo " E à SE";}
elseif ($dir==135) {echo "SE ";}
elseif ($dir==158) {echo "SE à S";}
elseif ($dir==180) {echo "S";}
elseif ($dir==202) {echo "S à SE";}
elseif ($dir==225) {echo "SO";}
elseif ($dir==248) {echo "SO à O";}
elseif ($dir==270) {echo "O";}
elseif ($dir==292) {echo "O à NO";}
elseif ($dir==315) {echo "NO";}
else  {echo "NO à N";}
?>
Je pensais, naïvement, que le code précédent devait m'afficher ;NE . Mais je récupère une page blanche vide de tout code .
Si vous avez une idée merci
Jean

Re: Vraiment débutant

Posté : 24 mai 2014, 12:30
par xTG
Actives les erreurs dans le php.ini quand tu es en développement.
Cela te donnerai :
Parse error: syntax error, unexpected '<' on line 1
Et en effet tu as un espace entre <? et php ;)

Re: Vraiment débutant

Posté : 24 mai 2014, 14:28
par sirakawa
suivant Xtg
<?PHP
$dir=45;
if ($dir==0) {echo "N";}
elseif ($dir==22) {echo "N à NE";}
elseif ($dir==45) {echo "NE ";}
elseif ($dir==68) {echo "NE à E";}
elseif ($dir==90) {echo "E";}
elseif ($dir==112) {echo " E à SE";}
elseif ($dir==135) {echo "SE ";}
elseif ($dir==158) {echo "SE à S";}
elseif ($dir==180) {echo "S";}
elseif ($dir==202) {echo "S à SE";}
elseif ($dir==225) {echo "SO";}
elseif ($dir==248) {echo "SO à O";}
elseif ($dir==270) {echo "O";}
elseif ($dir==292) {echo "O à NO";}
elseif ($dir==315) {echo "NO";}
else  {echo "NO à N";}
?>
Mais que se passe-t-il si dir vaut 43?
Je me demande si :
$directions = array(
"N",
"N NE",
"NE E",...);

$var = round ($dir  /22);
direction = $directions[$var]
ne suffirait pas.

Re: Vraiment débutant

Posté : 24 mai 2014, 19:25
par Landéda
Merci à tous les deux
Les directions sont les valeurs indiquées: 0,22,45,68... En effet (1/16)(360°)=22°5 qui est arrondi alternativement à 22° puis à 23°...
Le problème était bien " entre <? php "
merci encore mais je crains qu'il ne faudra que je revienne
Jean

Re: Vraiment débutant

Posté : 24 mai 2014, 20:50
par moogli
Salut

Si tu considère ton sujet résolus pense a cliquer sur le bouton résolus a côté du titre ;)

@+