Ho dato un'occhiata allo script (originale), e non lo ho capito molto bene.

Comunque quello che sicuramente ti manca e`:
<form ... onsubmit="return controlla();">

Invece le modifiche di ZeroCool non sono consigliabili: non conviene inviare il form da JS se non strettamente necessario.