la validazione lato client è solo "preventiva" e inaffidabile.
va fatta dal server dove hai il reale controllo di tutto.

eliminerei l'alert js di conferma: non è realmente utile ai fini del programma.
tutti gli avvisi è meglio elaborarli lato server e restituirli al client stampati sulla pagina di risposta.

l'alternativa è l'uso di ajax, ma è solo per l'aspetto client. di fatto potrai fare i controlli lato server.