Kod
function check(to){
var error="";
if(to.pwd.value!=to.pwd2.value)
error="Podane hasła różnią się!";
if(to.login.value==""){
if(error!="") error+="\n";
error+="Podaj login!";
}
if(to.pwd.value==""){
if(error!="") error+="\n";
error+="Podaj hasło!";
}
if(to.email.value==""){
if(error!="") error+="\n";
error+="Podaj adres e-mail!";
}
if(error=="") to.submit(); else alert(error);
}
var error="";
if(to.pwd.value!=to.pwd2.value)
error="Podane hasła różnią się!";
if(to.login.value==""){
if(error!="") error+="\n";
error+="Podaj login!";
}
if(to.pwd.value==""){
if(error!="") error+="\n";
error+="Podaj hasło!";
}
if(to.email.value==""){
if(error!="") error+="\n";
error+="Podaj adres e-mail!";
}
if(error=="") to.submit(); else alert(error);
}
I w formularzu:
Kod
onSubmit="check(this);return false;"
Skrypt działa, ale przy sprawdzaniu każdego pola muszę dopisywać (warunkowo) znak nowej linii - "\n".
W PHP załatwiłem to tak:
Kod
<? php $error='';
function addMess($mess){
global $error;
if(!empty($error)) $error.='<br />';
$error.=$mess;
}
if($_POST['pwd']!=$_POST['pwd2']) addMess('Podane hasła nie zgadzają się!');
if(strlen($_POST['login'])<3 || strlen($_POST['login'])>30) addMess('Login może mieć od 3 do 30 znaków');
... itd.
if($error==''){
wyślij formularz
} else{
echo $error;
}?>
function addMess($mess){
global $error;
if(!empty($error)) $error.='<br />';
$error.=$mess;
}
if($_POST['pwd']!=$_POST['pwd2']) addMess('Podane hasła nie zgadzają się!');
if(strlen($_POST['login'])<3 || strlen($_POST['login'])>30) addMess('Login może mieć od 3 do 30 znaków');
... itd.
if($error==''){
wyślij formularz
} else{
echo $error;
}?>
Ale jak coś podobnego w JS napisać? Próbowałem napisać funkcję podobną do tej addMess z PHP - ale nie wiem jak w js w funkcji edytować zmienną globalną. Proszę o rady jak taki skrypt napisać

Narazie załatwiłem to tak:
Kod
function check(to){
var error="";
if(to.pwd.value!=to.pwd2.value) error+="Podane hasła różnią się!\n";
if(to.login.value=="") error+="Podaj login!\n";
if(to.pwd.value=="") error+="Podaj hasło!\n";
if(to.email.value=="") error+="Podaj adres e-mail!\n";
if(error=="") to.submit(); else alert(error+"Proszę poprawić błędy i wysłać formularz ponownie.");
}
var error="";
if(to.pwd.value!=to.pwd2.value) error+="Podane hasła różnią się!\n";
if(to.login.value=="") error+="Podaj login!\n";
if(to.pwd.value=="") error+="Podaj hasło!\n";
if(to.email.value=="") error+="Podaj adres e-mail!\n";
if(error=="") to.submit(); else alert(error+"Proszę poprawić błędy i wysłać formularz ponownie.");
}
Kod się nieco skrócił, ale ma może ktoś lepsze pomysły na zorganizowanie tej funkcji?
