Creare un form per l’invio di email dal proprio sito con Html e Php
Questo è il codice completo della pagina:
<?php
//raccogliamo le variabili inviate
$nome=$_POST['nome'];
$email=$_POST['email'];
$messaggio=$_POST['messaggio'];
$Submit=$_POST['Submit'];
//controlliamo che sia stato inviato il form
if($Submit=='Invia!'){
//controlliamo che siano stati inseriti tutti i dati
if(!empty($nome) and !empty($email) and !empty($messaggio)){
//inviamo l'email
$mail=mail("dr.forme@gmail.com", "Oggetto email", $messaggio);
//controlliamo che la mail sia stata inviata correttamente
if($mail){
//messaggio in caso di successo
$ok="Email inviata!<br/>";
}
else{
//messaggio in caso di errore
$errore="Non è stato possibile inviare l'email, riprova.<br/>";
}
}
else{
//messaggio in caso di campi mancanti
$errore="Tutti i campi sono obbligatori!<br/>";
}
}
?>
<!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>Form invio email by Tecnopillole.com</title>
</head>
<body>
<?php if(isset($errore)){ echo $errore; }else{ if(isset($ok)){ echo $ok; } } ?>
<form name="mailform" method="post" action="<? $_SERVER['PHP_SELF'] ?>">
Nome<br />
<input type="text" name="nome" /><br />
Email<br />
<input type="text" name="email" />
<br />
<br />
<textarea name="messaggio" cols="40" rows="5">Inserisci il tuo messaggio qui..</textarea>
<br />
<input type="submit" name="Submit" value="Invia!" />
<input type="reset" name="Submit2" value="Cancella" />
</form>
</body>
</html>
Potete trovare qui la pagina di esempio, mentre a questo link il file completo in formato rar.
Caricamento ...
Questo è il link della pagina che voglio inviare via e-mail una volta compilata:
http://europeanfestival.altervista.org/form2.htm
potreste dirmi cosa c’è che non funziona? grazie!
Purtroppo la pagina html non è utile per identificare il problema.
Devi mostrarci il codice sorgente (php).
potrebbe essere d’aiuto anche questo post Form Email
[php]
[/php]
Salve a tutti,
volevo chiedere un cosa,
quando invio un email con questo sistema arriva a destinazione correttamente ma c’è solamente il messaggio, non appare chi l’ha mandato e il nome di chi l’ha scritto.
I campi del form riguardanti il nome e email non vendono spediti…
il codice usato è quello descritto sopra.
Grazie mille per qualsiasi info.
E’ necessario aggiungere le seguenti righe di codice:
// Intestazioni aggiuntive $headers = 'From: Luca <luca@mail.com>' . "\r\n"; //invio la mail $mail=mail("destinatario@email.it", "Oggetto email", $messaggio, $headers);