[PHP] Problème fonction sinus

starnicowars -  
 starnicowars -
Bonjour,
Je débute dans la programmation et j'ai un problème avec mes fonctions sinus. Voilà en gras les passages qui posent problèmes.

<?php

include('link.php');

$ID=0;

For($Année=0;$Année<2;$Année++){

For($jour=0;$jour<360;$jour++){
$saison=sin(((2*$Pi)/360)*$jour)+6;

For($Qh=0;$Qh<96;$Qh++){
$Ensol=sin(((2*$Pi)/(24*60))*$Qh*15);
If($Ensol<0){
$Ensol=0;
}
$ID=$ID+1;
$I=$Ensol*$saison;
$Year=2008+$Année;
$Month=intval($jour/30);
$Day=$jour-intval($jour/30)*30;
$Hour=intval($Qh/4);
$Minute=$Qh*15-intval($Qh/4)*60;
$LaDate=date("Y M d H:i:s", mktime ($Year, $Month, $Day, $Hour, $Minute, 0));

$query1 = "INSERT INTO Panneau15mn (ID, LaDate, Courant, Tension ) VALUES ( $ID, 18, $I , 12)";
$result1 = mysql_query($query1);
if (!$result1) {

die('Impossible d\'exécuter la requête :' . mysql_error());
}

}
}
}
?>

Quand je regarde ma table dans la base donnée la colonne Courant affiche que des 0 et je ne comprend pas trop, j'ai testé la ligne de la multiplication et de l'envoi des données et elles marchent mais c'est les 2 autres qui foirent. Can somebody help me ? S'il vous plaît ? ;)
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  1. le père
     
    Bonjour

    J'ai essayé ton script et il marche chez moi.
    Comment est définie ta colonne Courant ? en FLOAT ou DOUBLE j'espère mais même si c'est un INT tu devrais au moins voir la partie entière
    0
    1. starnicowars
       
      Elle était en INT mais je l'ai passée en DOUBLE c'est le même problème. Mais si cela marche chez toi c'est que le programme fonctionne et c'est assez rassurant. Merci
      0
      1. jj > starnicowars
         
        pi=355/113
        0
  2. le père
     
    Bonjour

    Question idiote : ton $Pi est bien initialisé à 3.1415926... ?
    0
    1. starnicowars
       
      Ouais $Pi n'était pas initialisé ... mais maintenant je me rend compte que mon sin() ne marche pas non plus, l'ayant teté avec sin(60) le resultat etait toujours 0 ... Est ce que c'est normal ?
      0
  3. starnicowars
     
    Non c'est bon j'avais tapé la mauvaise formule, au temps pour moi. Le problème est résolu, merci à tous.
    0