Premetto che di php ho basi poco solide, non sono una cima...Questo script mi fà impazzire. Infatti:
l'email mi arriva alla casella di posta ma il mittente non corrisponde a quello del campo inserito nel form.
Inoltre appena apro la pagina mi appare già il messaggio "Errore: è necessario compilare il campo 'Nome e cognome"
Ecco lo script, per favore potrei avere una mano? grazie
<html>
<head>
<title>Email</title>
</head>
<body>
<p align="center">
<form method="post" action="form.php">
Nome
<input type="text" name="nome">
<input type="text" name="email">
Messaggio
<textarea name="testo" rows="5" cols="25"></textarea>
<input type="submit" value=" Invia ">
</form>
</p>
<?PHP
// Processo di recupero dei dati
$nome = $_POST['nome'];
$email = $_POST['email'];
$messaggio = nl2br($_POST['testo']);
// Processo di controllo [Opzionale]
if ($nome == null)
{
print "Errore: è necessario compilare il campo 'Nome e cognome'";
}
else
{
if (!eregi("^[a-z0-9][_\.a-z0-9-]+@([a-z0-9][0-9a-z-]+\.)+([a-z]{2,4})", $email))
{
print "Errore: è necessario compilare il campo 'Indirizzo e-mail'";
}
else
{
if ($messaggio == null)
{
print "Errore: è necessario compilare il campo 'Messaggio'";
}
else
{
// Processo di configurazione dell'email
// [Destinatario, mittente, ecc]
$mail_to = "mmdj2107@libero.it";
$mail_from = $email;
$mail_subject = "Contatto dal web da parte di $nome";
$mail_body = "
<font color=#000000>$messaggio</font></p>";
// Intestazioni HTML
$mail_in_html = "MIME-Version: 1.0\r\n";
$mail_in_html .= "Content-type: text/html; charset=iso-8859-1\r\n";
$mail_in_html .= "From: <$mail_from>";
// Processo di invio
if (mail($mail_to, $mail_subject, $mail_body, $mail_in_html))
{
print "Email inviata con successo!";
}
else
{
print "Errore";
}
}
}
}
?>
</body>
</html>