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:
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>
I dati vengono inviati allo script tramite questo form:
codice:
<form name=f1 method=post action="login.php" onSubmit="return valid(this)">
che, ovviamente, al suo interno contiene il bottone submit e le caselle di testo.
Il problema è che in php ho realizzato anche uno script del genere:
codice:
<?php
if (isset($_POST['acc']))
{ //operazioni funzionanti in php
}
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?