Ciao a tutti!
Mi trovo davanti ad un problema inspiegabile :S
In pratica ho un semplice ciclo if che vi propongo di seguito:
codice:
if ($voto_utente_media < '0.5') { $scale = '0';}
if ($voto_utente_media > '0.5') { $scale = '1';}
if ($voto_utente_media > '1.0') { $scale = '2';}
if ($voto_utente_media > '1.5') { $scale = '3';}
if ($voto_utente_media > '2.0') { $scale = '4';}
if ($voto_utente_media > '2.5') { $scale = '5';}
if ($voto_utente_media > '3.0') { $scale = '6';}
if ($voto_utente_media > '3.5') { $scale = '7';}
if ($voto_utente_media > '4.0') { $scale = '8';}
if ($voto_utente_media > '4.5') { $scale = '9';}
if ($voto_utente_media > '5.0') { $scale = '10';}
if ($voto_utente_media > '5.5') { $scale = '11';}
if ($voto_utente_media > '6.0') { $scale = '12';}
if ($voto_utente_media > '6.5') { $scale = '13';}
if ($voto_utente_media > '7.0') { $scale = '14';}
if ($voto_utente_media > '7.5') { $scale = '15';}
if ($voto_utente_media > '8.0') { $scale = '16';}
if ($voto_utente_media > '8.5') { $scale = '17';}
if ($voto_utente_media > '9.0') { $scale = '18';}
if ($voto_utente_media > '9.5') { $scale = '19';}
if ($voto_utente_media == '10.0') { $scale = '20';}
Ottengo i seguenti risultati strani:
se $voto_utente_media è uguale a "0.0" ottenngo uno $scale = '1' mentre dovrebbe essere '0'
se $voto_utente_media è uguale a "0.1" ottengo uno $scale = '15' mentre dovrebbe essere sempre '0' :S
se $voto è uguale a "7.0" ottengo $scale = '15' mentre dovrebbe essere '14'
Scusate se ho scritto in "linguaggio macchina" ma era il modo più semplice per spiegarmi... come mai succede questo? Non riesco a lavorare con i decimali