Un problema per volta.

Faccio una pagina di esempio e mi interesso solo di validare il dato, lato server.
A me va in errore solo se metto un numero non valido, per esempio "1." se ho la virgola come separatore decimale. Come ti ho proposto va, nel senso che riesci a capire la natura dell'errore.

Se lato server passa il controllo di validità, l'immissione in database è un'altra questione.