Ho provato a modificare così lo script per 2 campi, io ho visto che gira come voglio e quindi mi va bene, però ditemi se c'è qualcosa che si può modificare, per esempio quel $sw credo che possa essere tolto in qualche modo...però da quello che ho capito l'ulteriore controllo di php serve per controllare sia dal lato client che dal lato server...

I controlli principali avverrebbero dunque in Js (per esempio che la email contenga la chiocchiola...) mentre in php mi limiterei solo a constatarne l'"isset" cioè se i campi sono stati "riempiti"... giusto?


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script language="JavaScript" type="text/JavaScript">
function validateForm()
{

if (document.forms[0].elements[0].value == "")
{
alert ("Il campo nome è vuoto");
return false;
}


if (document.forms[0].elements[1].value == "")
{
alert ("Il campo pw è vuoto");
return false;
}
return true;
}
</script>
</head>
<body>
<?php
$sw = 0;
if ((isset($_POST['nome'])) && (isset($_POST['pw'])))
{ $sw=1;
if(empty($_POST['nome']))
{
echo "controllo php - il campo nome è vuoto"; $sw=0;
}
else
{
$nome = $_POST['nome'];
}


if(empty($_POST['pw']))
{
echo "controllo php - il campo pw è vuoto"; $sw=0;
}
else
{
$pw = $_POST['pw'];
}
}

if ($sw == 1 )
{
//INSERISCI i dati nel DB

echo ("nome " . $nome . "
");
echo ("pw " . $pw);
// ho messo la stampa a video giusto per controllo
}

?>
<form onSubmit="return validateForm();" action="<?php echo $_SERVER['PHP_SELF'];?>" method="post" name="frm">
<input name="nome" type="text" value="">

<input name="pw" type="password" value="">

<input name="frmSubmit" type="submit" value="Schizza !">
</form>
</body>
</html>