Originariamente inviato da ciqciq
Secondo me... se $voto_utente_media è un float i controlli dovresti farli così:


Gli apici dovresti toglierli anche nel caso in cui consideri $scale come un intero.
Ti ringrazio per il suggerimento, non ci avevo proprio pensato a questa cosa... sinceramente non so se $voto_utente_media sia un float... a dire il vero non so bene cosa significhi :S

In ogni caso il valore di $scale mi serve solo per avere un grafico a livello di template, e ragionando meglio sul ciclo l'ho modificato perché dovrebbe funzionare così:
Codice PHP:
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';} 
Purtroppo anche togliendo gli apici ottengo lo stesso risultato di prima...

In pratica la mia condizione, in linguaggio umano, dovrebbe essere

SE $voto è minore o tutt'al più uguale a X ALLORA $scale sarà uguale a Y

quindi
se $voto = 9.4 { $scale = 19}
se $ voto = 9.5 { $scale = 19} mentre ottengo $scale = 20
se $voto = 0.0 { $scale = 0 } mentre ottengo $scale = 1
l'assurdo: se $voto = 0.3 { $scale = 15} :S