[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 ? ;)
A voir également:

3 réponses

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
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
jj > starnicowars
 
pi=355/113
0
le père
 
Bonjour

Question idiote : ton $Pi est bien initialisé à 3.1415926... ?
0
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
starnicowars
 
Non c'est bon j'avais tapé la mauvaise formule, au temps pour moi. Le problème est résolu, merci à tous.
0