I problemi possono essere molteplici.
document.invio
potrebbe non essere corretto e quindi JS va in errore e si ferma (hai controllato se hai errori nella console?), sostituisci tutti i document. che hai ora con
document.getElementsByName("nome_del_campo")
se poi oltre al name ci metti anche un id ai campi ed usi quello č meglio ancora.
Sbagli anche i check JS, ad esempio
codice:
else if (
(cognome == "" && nome == "" && email == "" && FB_ID == "" && cell == "" && USR1 == "" && USR2 == "") ||
(cognome == "undefined" && nome == "undefined" && email == "undefined" &&
ID == "undefined" && cell == "undefined" && USR1 == "undefined" && USR2 == "undefined") )
{
alert("Devi inserire qualcosa");
Questo ti presenta l'alert solo se tutti quei campi sono vuoti, a te basta anche che uno solo sia compilato?
Comunque se un utente ci mette anche solo degli spazi vuoti passa il controllo.
Hai lo stesso comportamento in altri controlli.