Ciao a tutti! grazie in anticipo a chi vorrà rispondermi! ...posto qui sotto il codice utilizzato per la realizzazione delle due pagine del form in questione.
pagina mail.html codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento senza titolo</title>
</head>
<body>
<form action="mail.php" method="post">
<table align="center" width="70%" cellpadding="2">
<tr>
<td>Il tuo nome</td>
<td><input name="nome" type="text" size="30" maxlength="40" /></td>
</tr>
<tr>
<td>
Indirizzo mail
</td>
<td>
<input name="email" type="text" size="30" maxlength="50" />
</td>
</tr>
<tr>
<td>
Età
</td>
<td>
<select name="age">
<option></option>
<option value="18-24">18-24</option>
<option value="25-30">25-30</option>
<option value="31-35">31-35</option>
<option value="36-40">36-40</option>
</select>
</td>
</tr>
<tr>
<td>
Messaggio
</td>
<td>
<textarea name="messaggio" rows="4" cols="30"></textarea>
</td>
</tr>
<tr>
<td>
<input type="submit" value="invia" />
</td>
<td>
<input type="reset" value="cancella" />
</td>
</tr>
</table>
</form>
</body>
</html>
ed ora qui sotto il codice php:
<?
//Edita la variabile $mia_mail con il tuo indirizzo di posta elettronica
$mia_mail = "pippo@prova.it";
//Informazioni del mittente che saranno visualizzate nella mail ricevuta
$mittente = $_POST['email'];
$headers = "MIME-Version: 1.0\r\n";
$headers = "From: $mittente\r\n";
//Inizializza l'array degli errori
$errori = array();
if(empty($_POST['nome']) )
{
$errori[] = 'Non hai specificato il tuo nome';
}
if(!ereg("^[^@ ]+@[^@ ]+\.[^@ \.]+$", $_POST['email']))
{
$errori[] = 'Devi inserire una mail valida';
}
if(empty($_POST['email']) )
{
$errori[] = 'Hai lasciato il campo e-mail vuoto';
}
if(empty($_POST['age']) )
{
$errori[] = 'Non hai specificato la tua età';
}
if(empty($_POST['messaggio']) )
{
$errori[] = 'Non hai scritto alcun messaggio';
}
//Spedisce la mail in caso di controllo positivo
if(!$errori)
{
$subject = $_POST['nome'];
$message = $_POST['messaggio'];
mail($mia_mail, $subject, $message, $headers);
if(mail)
{echo "<h1>Messaggio inviato, grazie</h1>";
}
}
// Errori nella compilazione del modulo
else {
echo "<h1>Attenzione : I seguenti errori sono stati riscontrati nella compilazione del modulo</h1><br />";
// I messaggi di errore saranno visualizzati in un ciclo foreach
foreach($errori as $error_message)
{
echo "$error_message <br />\n";
}
echo "Tornare <a href='javascript:history.back()'>indietro</a> e correggere.<br/>
Grazie";
}
?>
ebbene, realizzato queste due paginette le ho messe sul server aziendale....un server con questi moduli installati:
Apache/2.2.3 (Debian) mod_python/3.2.10 Python/2.4.4 PHP/5.2.0-8+etch13 mod_perl/2.0.2 Perl/v5.8.8
compilo il form......premo invia.....e il modulo php mi dà risposta positiva.... Messaggio inviato, grazie........ma non mi arriva nessuna mail......scusate l'ignoranza in materia ma dov'è l'inghippo??? cosa c'è che non va? grazie ancora in anticpo a chiunque avrà voglia di spiegarmi!
Teo
pagina mail.html codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento senza titolo</title>
</head>
<body>
<form action="mail.php" method="post">
<table align="center" width="70%" cellpadding="2">
<tr>
<td>Il tuo nome</td>
<td><input name="nome" type="text" size="30" maxlength="40" /></td>
</tr>
<tr>
<td>
Indirizzo mail
</td>
<td>
<input name="email" type="text" size="30" maxlength="50" />
</td>
</tr>
<tr>
<td>
Età
</td>
<td>
<select name="age">
<option></option>
<option value="18-24">18-24</option>
<option value="25-30">25-30</option>
<option value="31-35">31-35</option>
<option value="36-40">36-40</option>
</select>
</td>
</tr>
<tr>
<td>
Messaggio
</td>
<td>
<textarea name="messaggio" rows="4" cols="30"></textarea>
</td>
</tr>
<tr>
<td>
<input type="submit" value="invia" />
</td>
<td>
<input type="reset" value="cancella" />
</td>
</tr>
</table>
</form>
</body>
</html>
ed ora qui sotto il codice php:
<?
//Edita la variabile $mia_mail con il tuo indirizzo di posta elettronica
$mia_mail = "pippo@prova.it";
//Informazioni del mittente che saranno visualizzate nella mail ricevuta
$mittente = $_POST['email'];
$headers = "MIME-Version: 1.0\r\n";
$headers = "From: $mittente\r\n";
//Inizializza l'array degli errori
$errori = array();
if(empty($_POST['nome']) )
{
$errori[] = 'Non hai specificato il tuo nome';
}
if(!ereg("^[^@ ]+@[^@ ]+\.[^@ \.]+$", $_POST['email']))
{
$errori[] = 'Devi inserire una mail valida';
}
if(empty($_POST['email']) )
{
$errori[] = 'Hai lasciato il campo e-mail vuoto';
}
if(empty($_POST['age']) )
{
$errori[] = 'Non hai specificato la tua età';
}
if(empty($_POST['messaggio']) )
{
$errori[] = 'Non hai scritto alcun messaggio';
}
//Spedisce la mail in caso di controllo positivo
if(!$errori)
{
$subject = $_POST['nome'];
$message = $_POST['messaggio'];
mail($mia_mail, $subject, $message, $headers);
if(mail)
{echo "<h1>Messaggio inviato, grazie</h1>";
}
}
// Errori nella compilazione del modulo
else {
echo "<h1>Attenzione : I seguenti errori sono stati riscontrati nella compilazione del modulo</h1><br />";
// I messaggi di errore saranno visualizzati in un ciclo foreach
foreach($errori as $error_message)
{
echo "$error_message <br />\n";
}
echo "Tornare <a href='javascript:history.back()'>indietro</a> e correggere.<br/>
Grazie";
}
?>
ebbene, realizzato queste due paginette le ho messe sul server aziendale....un server con questi moduli installati:
Apache/2.2.3 (Debian) mod_python/3.2.10 Python/2.4.4 PHP/5.2.0-8+etch13 mod_perl/2.0.2 Perl/v5.8.8
compilo il form......premo invia.....e il modulo php mi dà risposta positiva.... Messaggio inviato, grazie........ma non mi arriva nessuna mail......scusate l'ignoranza in materia ma dov'è l'inghippo??? cosa c'è che non va? grazie ancora in anticpo a chiunque avrà voglia di spiegarmi!
Teo