Stranamente il form che ho fatto, riconosce gli errori, segnalando con la scritta colorata dov'è il problema del form, ma infine invia cmq l'email... il codice mi pare corretto
Codice PHP:
<?php
$nome = "";$mail = "";$oggetto = "";$messaggio = "";$correct = "off";
$corretto = "off";
if ( isset($_POST["submit"])) {
$nome = $_POST["nome"];
$mail = $_POST["email"];
$oggetto = $_POST["oggetto"];
$messaggio = $_POST["messaggio"];
$nomec = "color:gray;";
$mailc = "color:gray;";
$oggettoc = "color:gray;";
$messaggioc = "color:gray;";
$corretto = "off";
if (strlen($nome) <= 2) { $corretto = "off"; $nomec = "color: orange;"; } else { $corretto = "on"; }
if (strlen($mail) <= 2) { $corretto = "off"; $mailc = "color: orange;"; } else { $corretto = "on"; }
if (strlen($oggetto) <= 2) { $corretto = "off"; $oggettoc = "color: orange;"; } else { $corretto = "on"; }
if (strlen($messaggio) <= 2) { $corretto = "off"; $messaggioc = "color: orange;"; } else { $corretto = "on"; }
if(eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $mail)) { $corretto = "on"; } else { $corretto = "off"; $mailc = "color: orange;"; }
}
?>
<form method="post" action="contactus.php" name="inviamail" id="f" target="_self">
<input type="text" size="15" name="nome" value="<?php echo "$nome"; ?>">
<?php echo"<span style='$nomec'> Nome </span>"; ?>
<input type="text" size="15" name="email" value="<?php echo "$mail"; ?>">
<?php echo"<span style='$mailc'> Email </span>"; ?>
<input type="text" size="45" name="oggetto" id="ogg" value="<?php echo "$oggetto"; ?>">
<?php echo"<span style='$oggettoc'> Oggetto </span>"; ?>
<?php echo"<span style='$messaggioc'> Messaggio: </span>"; ?>
<textarea cols="40" rows="8" name="messaggio" id="mes">
<?php echo "$messaggio"; ?></textarea>
<input type="submit" name="submit" value="Invia" class="button">
<input type="reset" value="Cancella" class="button">
<?php
if ( isset($_POST["submit"])) {
echo $corretto; // scrivo la variabile corretto per trovare il problema del form
if ( $corretto == "on" ) {
$sendmail = mail("emailprova@gmail.com",$oggetto,$messaggio,"$name - $email");
echo"
<p style='color: orange;'>E-mail inviata correttamente
";
}
else { echo "
<p style='color: orange;'>Il modulo contiene errori, compilarlo correttamente.
"; }
}
?>
</form>