Salve a tutti...ho un problema su OnSubmit. Premetto che di javascript conosco poco/niente, e lo uso solo per le validazioni, mentre per il resto php. Ho in pratica un login, dove, se l'indirizzo e-mail è inserito in un modo non corretto, lancia un alert, stessa cosa per la password. Il codice è questo:
I dati vengono inviati allo script tramite questo form:codice:<script language="javascript"> function valid(f1) { var email = document.f1.us.value; var password = document.f1.pw.value; var email_reg_exp = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/; if ((email == "") || (email == "undefined")) { alert("Inserire un indirizzo e-mail"); document.f1.email.select(); return false; } else if (!email_reg_exp.test(email)) { alert("Inserire un indirizzo e-mail corretto"); document.f1.email.select(); return false; } else if ((password == "") || (password == "undefined")) { alert("Inserire una password"); document.f1.email.focus(); return false; } else { return true; } } </script>
che, ovviamente, al suo interno contiene il bottone submit e le caselle di testo.codice:<form name=f1 method=post action="login.php" onSubmit="return valid(this)">
Il problema è che in php ho realizzato anche uno script del genere:
dove 'acc' è il mio bottone submit. Succede che quando, per esempio, il campo e-mail è vuoto, viene visualizzato il messaggio di alert, ma contemporaneamente viene eseguito lo script php, eseguendo le operazioni. Cosa ho sbagliato, visto che con l'onsubmit se è false non ci si dovrebbe muovere da quella pagina?codice:<?php if (isset($_POST['acc'])) { //operazioni funzionanti in php }

Rispondi quotando
era esattamente quello, solo che, avendo poca conoscenza di javascript, ritenevo che bisognasse mettere il nome della variabile e non quello del campo 