Sostituisci
$somma = $a+$b+c;

con

$somma = $a+$b+$c;
Se provi a fare una echo di $somma e $d
vedrai che $somma corrisponde sempre ad $a+$b mentre c viene scartata.

BH
ehm no -_- ....quello è un errore di digitazione qui nel forum ...

I miei test di stampa del risultato danno in realta' sempre il valore giusto ....

ad esempio mi viene stampato in ogni caso:
$somma = 99.99
$d = 99.99

apparentemente sarebbe corretto ma in caso gli operandi siano come quelli che ho citato nel messaggio originale il controllo if ($d!=$somma) restituisce il valore sbagliato

ripeto, solo in certi casi mentre in altri funziona apparentemente senza problemi



se hai definito il campo decimal (8,2) è mysql che ti inserisce due zeri dopo la virgola, ed è utile visto che con gli euro serve così.
Infatti nei calcoli che utilizzano i dati presi dal db in seguito all'immissione non ho problemi.. ma in questo caso il controllo non ha a che fare con il db e quindi mi trovo con dei valori che non sono in formato decimal 8,2 come vorrei

dato che temo (spero di trovare conferma qui e di capire il perchè') che il controllo incasini il suo lavoro proprio per la natura dei dati mi sarebbe utile convertire i valori in tipo decimale dal javascript stesso

e' fattibile ?? esiste una funzione per la conversione dei dati di una variabile ?

inoltre, se decidessi di riscrivere il controllo in php, la regexp che uso nel js sarebbe la medesima o i due linguaggi utilizzano una sintassi differente ?

grazie
ciao ^^