Alzi la mano chi non si è mai trovato nella necessità di inviare dei dati da form nei propri siti web!!
Raccogliere le impressioni dei nostri utenti , infatti , non solo permette di migliorare i nostri servizi in base a quelle che sono le esigenze degli utenti, stessi, ma permette inoltre di donare un tocco di professionalità al nostro sito web.
Utilizzeremo un form html, un file di configurazione uno script semplicissimo in php.
Vediamo come fare
Il file di configurazione
E' consigliabile, creare un file di configurazione in cui inserire i valori delle variabili che useremo ogni volta nel nostro script: in questo modo renderemo il programma facilmente personalizzabile e modificabile velocemente nell'utilizzo in altri siti web
Analizziamo il file di configurazione:
// file di configurazione
$destinatario= " webmaster@risorseweb.net "
$oggettoemail = "Feedback dal mio sito";
$intestazioni= "From: Il mio sito web ";
$intestazioni.= "Reply-To: $email
Il form per l'invio dei dati
Il form che ci accingiamo a costruire contiene tutte le informazioni necessarie per contattare gli utenti : costuiremo quindi un form abbastanza ricco di campi , ipotizzando il suo utilizzo in un sito web aziendale, per conoscere al meglio i clienti.
<form method="post" action="inviodati.php">
Cognome <br /><input type="text" name="cognome" size="28" maxlength="40" /><br />
Nome<br /><input type="text" name="nome" size="28" maxlength="40" /><br />
Indirizzo<br /><input name="via" size="28" maxlength="40" /><br />
</form>
Come si evince dal codice, il form passerà tutti i dati dei campi inseriti alla pagina inviodati.php che si occuperà di inviarli alla casella email indicata nel file di configurazione.
Lo script per l'invio dei dati
Fino ad ora niente di nuovo , veniamo ora invece alla parte più interessante di questa lezione: la descrizione dell'invio dei dati raccolti dal form precedentemente descritto.
Includiamo innanzitutto il file di configurazione precedentemente costruito:
include('configfeedback.php');
Bene , ora siamo pronti per la costruzione del codice per la cootruzione della e-mail da inviare nella nostra casella di posta prima indicata nel file di configurazione.
E' necessario inserire un minimo controllo sull'invio dei dati , per evitare la ricezione di email senza nessun campo riempito: di conseguenza effettueremo dei controlli sui campi principali e obbligheremo gli utenti ad inserire almeno nome , cognome ed email.
Vediamo come fare:
if($cognome=="")
die("Non hai inserito il cognome: vai indietro e controlla i dati inseriti");else if($nome=="")
die("Non hai inserito il nome: vai indietro e controlla i dati inseriti");
Se le variabili $cognome e $nome sono stringhe vuote, lo script si interromperà stampando a video il motivo del mancato invio e l'invito a ricontrollare i dati non inseriti.
Più interessante è invece il controllo effettuato sulla variabile $email:
else if (($email=="") || (!eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{
oltre al controllo sul riempimento del campo email, andremo a controllare anche il formato della email inserita: con la funzione eregi, effettuamo il controllo sul formato della email inserita, controlliamo cioè che la variabile $email contenga la consueta @ e che sia nella forma io@miosito.tld
Utilizziamo, come corpo della nostra email , un 'unica stringa che andremo a concatenare con tutti i campi del nostro form, utilizzando oppurtunamente le
sequenze di escape per formattare opportunamente la nostra email per una visualizzazione più gradevole
| Autore | Testo |
|---|