Probleme calcul pourcentage! aidez moi svp!

Poulpi
Invité n'ayant pas de compte PHPfrance

10 mai 2005, 15:31

Bonjour un un soucis :
je dois faire une requete calculant un pourcentage. Mes 2 varaibles me donnent bien des valeurs ms lorsque jeffectue une division de cenne ci il ya un probleme ...

$Total_1heure = $db->get_var("SELECT count(er.id_etudiants) FROM etudiants e, etud_rep er
WHERE e.id_etudiants = er.id_etudiants and e.id_annees = 1 and er.id_reponses = 40
");

echo $Total_1heure; // me donne la valeur 44


$Total_1heureF=$db->get_var("SELECT count(er.id_etudiants) FROM etudiants e, etud_rep er
WHERE e.id_etudiants = er.id_etudiants and e.id_annees = 1 and er.id_reponses = 27 and 40 and er.id_questions = 13 ");

echo $Total_1heureF; // me donne la valeur 4

if ($Total_1heure > 0)
{
$total = ($Total_1heureF / $Total_1heure);
}

echo $total; // me donne la valeur 1 au lieu de 0.09

Pourquoi ce beug? pb de cast ou pas?
jai essayé de faire : $total = intval($Total_1heureF)/intval($Total_1heure); < ms mm probleme

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

10 mai 2005, 16:07

Je pencherais pour un pb de cast aussi !!!

Mais fait attention, 0,09 est un Float et non pas un entier !!! Par contre, je ne comprend pas pourquoi il donne 1 vu que si arrondi ou si on tronque 0.09, on devrait obtenir 0 !!!
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Invité
Invité n'ayant pas de compte PHPfrance

10 mai 2005, 16:29

je pige pa aussi.
Dans ma requete je compte id_etudiants qui est un champs big int.
j'obtiens des resultats et quand jessai de faire une division les resultats sont incoherents et je vois pas pourquoi.

Eléphanteau du PHP | 13 Messages

10 mai 2005, 17:09

Sachant que 0.09 est superieur a 0, l'arrondi peut se faire vers le haut aussi non ? et donc afficher 1...
C'est pas moi qui suis stupide, c'est ma question...

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

10 mai 2005, 17:22

Un truc : :idea:
Ajoute des echo dans ton code pour afficher côte à côte, valeurs brutes et pourcentages...