<?php
//Codice per creare il form
echo"<form action=$_SERVER[PHP_SELF] mehod=post>
<table borer=0 cellspacing=0 cellpadding=1>
<td>Nome:</td>
<td><input type=text name=nome size=15></td>
<tr>
<td>email:</td>
<td><input type=text name=email size=15></td>
<tr>
<td>Messaggio:</td>
<td><textarea cols=18 rows=6 name=messaggio></textarea></td>
</table>
<input type=submit name=submit value=Invia></form>";
/*L'attributo name di ogni input serve per definire le variabili che saranno
passate allo script nel momento in cui l'utente clicca su invia. Ad esempio il primo input ha un attributo name=nome quindi verrà passata allo script una variabile chiamata $_POST[nome] che conterrà il nome che ha scritto l'utente. In questo modo si possono effettuare controlli sui campi del form e far capire allo script che cosa deve inviare.*/
/* In questo modo anche se sei su server che supportano PHP in versione
più vecchia di 4.0.1 dove l'array globale $_POST non è supportato, tutto
torna in ogni caso. */
if (!isset($_POST)) $_POST = $HTTP_POST_VARS;
if($_POST[submit]) {
//Controlla che tutti i campi del form siano stati compilati
// ovviamente non può controllare se in nome inserisci dei numeri o se
// in email metti qualcosa tipo ghghghdd.
// per controllare meglio ci vorrebbe molto codice in più.
if($_POST[nome] && $_POST[email] && $_POST[messaggio]) {
$a = "emaildestinatario@qualcosa.it";
/*qui sopra devi inserire l'e-mail del destinatario. Questo caso è valido se tutte le e-mail inviate dagli utenti devono essere inviate ad un unico indirizzo..potrebbe essere un modulo di feedback. Se invece vuoi che il destinatario sia scelto dall'utente allora devi aggiungere un altro input nel form con un altro attributo name tipo: <input type=text name=email2> che diventerà la variabile $_POST[email2] da aggiungere allo script. In questo caso la variabile $a sarebbe: $a = "$_POST[email2]";
$da = "$_POST[email]";
$oggetto = "Scrivi l'oggetto dell'e-mail";
/*anche in questo caso se vuoi che sia l'utente a scrivere l'oggetto dell'e-mail devi aggiungere un input con l'attributo name che creerà la variabile da aggiungere allo script.*/
// Il costrutto postato da abbagliami non sempre funziona dato che
// dipende dalla versione del PHP e dalle impostazioni del config.
// meglio ricorrere al vecchio metodo di assegnazione, tanto qui
// non ci sono parametri particolari da passare.
$messaggio = $_POST[messaggio];
/*Sopra è il codice per stabilire il messaggio da inserire nell'e-mail. $_POST[messaggio] rappresenta il messaggio che ha scritto l'utente, tu puoi aggiungere anche qualcosa a mano del tipo: Questa e-mail ti è stata inviata dal sito:
www.sito.it ecc ecc.*/
mail("$a", "$oggetto", "$messaggio", "From: .$da");
echo"Il tuo messaggio è stato inviato con successo";
} else {
echo"Devi compilare tutti i campi del form";
}
}
?>