Un'alternativa è di mostrare quali sono i campi da compilare.
File : test3000.php
codice:
<?php
//-------------- VALORE DEL PULSANTE Invia
$sub = "";
if (isset($_POST['sub'])) {
$sub = $_POST['sub'];
} // $sub = $_POST['sub'];
//-------------- INIZIALIZZAZIONE FLAG ERRORI
$error = false;
$cog_error = false;
$nom_error = false;
//-------------- INIZIALIZZAZIONE CAMPI
$cog = "";
$nom = "";
//-------------- CONTROLLI
if ($sub == "Invia") {
//------------- controlla cognome
if (isset($_POST['cognome'])) {
$cog = $_POST['cognome'];
} // if (isset($_POST['cognome']))
if ($cog == "") {
$cog_error = true;
$error = true;
} // if ($cog == "")
//------------- controlla nome
if (isset($_POST['nome'])) {
$nom = $_POST['nome'];
} // if (isset($_POST['nome']))
if ($nom == "") {
$nom_error = true;
$error = true;
} // if ($cog == "")
//-------------- Se non ci sono errori si puo' proseguire
if (! $error) {
//------- QUI IL CODICE DA ESEGUIRE SE NON CI SONO ERRORI
exit; // messo solo per fermare la pagina
} // if (! $error)
} // if ($sub == "Invia")
//--------------- Visulizza lo sfondo giallo se dato non immesso
$cog_error_text = "";
if ($cog_error) {
$cog_error_text = "class='error'";
} // if ($cog_error)
//--------------- Visulizza lo sfondo giallo se dato non immesso
$nom_error_text = "";
if ($nom_error) {
$nom_error_text = "class='error'";
} // if ($nom_error)
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled</title>
<style type="text/css">
<!--
.error {background-color:yellow}
-->
</style>
</head>
<body>
<form action="test3000.php" method="post">
Cognome :
<input <?php print $cog_error_text ?> type="input" name="cognome" size="20" maxlength="35"
value="<?php print $cog ?>">
Nome :
<input <?php print $nom_error_text ?> type="input" name="nome" size="20" maxlength="35"
value="<?php print $nom ?>">
<input type="submit" name="sub" value="Invia">
</form>
</body>
</html>