Keď máš server, tak je zbytočné to robiť na klientovi. Čo ti nefunguje v PHP, str_replace?
$value = str_replace(',', '.', $value);
Ak to chceš robiť v JavaScripte, tak zmeníš telo onInput na this.value = this.value.replace(/,/g, '.'). A dáš to do obsluhy onblur. Prípadne dáš tú kontrolu do form.onsubmit a v prípade nesprávneho vstupu vrátiš false. Ale v prvom rade by som to ošetroval na serveri.