si vero ma e' anche brutto.

cmq e' una sol.

Tuttavia la funzione js ti consente di controllare lato client i dati per evitare un alto troughtput di dati al server.

Per esempio alcuni controlli ti semplificano la vita come per esempio evitano il refresh o il reidirect della pagina.
Evitano di dover ricompilare la form con php.
Evitano che se sbaglio a mettere la mail devo cmq domandare al server.
Etc etc.

Ovviamente lato server vanno sempre fatti i controlli.