di: Simone Carletti 16 Settembre 2005
Combinando insieme l'uso di alcuni oggetti e funzioni comuni in ASP è possibile inviarevia email il contenuto di una form . Non solo, in questo caso vedremocome inviarla in allegato dopo averne scritto le informazioni in un file di testo.
Se a primo impatto il tutto può sembrarvi complesso niente panico.Come in qualsiasi problema difficile, la prima cosa da fare è suddividereil tutto in semplice step più facili da completare.
Per realizzare il nostro sistema dovremo quindi
I passi sono volutamente numerosi perché è bene descriveredettagliatamente tutte le operazioni per non perderci per strada, mavedremo come il tutto si riassume in poche righe.
Il primo passo è creare una form di invio . Sono esempiclassici un modulo di contatto o un modulo per preventivi. Nel nostro caso, persemplificare il tutto, creeremo una form con 2 campi di testo ed una textareache conterranno rispettivamente il nome, cognome ed un commento.
<form name="frmEmail" method="post" action="?send=1">
<br />Nome
<br /><input type="text" name="nome" value="" />
<br />Cognome
<br /><input type="text" name="cognome" value="" />
<br />Commento
<br /><textarea name="commento"></textarea>
<br /><input type="submit" name="submit" value="invia" />
</form>
L'action della form, ovvero la pagina di raccolta delle informazioni come è possibilenotare è la stessa della form a cui aggiungiamo per semplificare il controlloun valore in querystring che ci permetta di verificare se dobbiamo inviare ilmodulo o mostrarlo.
Il passo successivo è controllare ad inizio pagina se la form è stata inviata . Come detto in precedenza infatti il codice di invio dell'email ed il modulo sono inseriti per comodità nello stesso file.
È quindi necessario far conoscere al webserver quale azione deve intraprendere.
Per far ciò ad inizio pagina eseguiamo un controllo se è presente la variabile in querystring prima definita e se il bottone della form è stato premuto. In caso affermativo procederemo all'invio dell'email, in caso negativo mostreremo il modulo di invio.
Per semplicità possiamo appoggiarci ad una variabile per gestire il controllo. Se la form è stata inviata la variabile conterrà un messaggio di conferma. Nel corpo del file sarà sufficiente controllare la lunghezza di questa variabile. Se maggiore di 0 allora stamperemo il messaggio. Se minore o uguale a 0 sarà mostrare il modulo per permettere all'utente di compilare i campi ed inviarlo.
Riassumento possiamo procedere in questo modo:
if Request.Querystring("send") = 1 AND Len(Request.Form("submit")) > 0
then
' codice per la creazione del file
' scrittura dei contenuti
' ed invio email
' messaggio di conferma
strMessage = "<p>L'email è stata inviata correttamente.<br
/>"
strMessage = strMessage & "Il contenuto della form è stato allegato
all'email.</p>"
end if
' nel corpo del documento eseguiamo il controllo
' se mostrare la conferma o il modulo
' verificando la lunghezza della variabile
if Len(strMessage) > 0 then
Response.Write(strMessage)
else
' mostra la form prima creata
end if
%>
Guida ASP NukePercorso per conoscere ASP Nuke: sistema di gestione contenuti open... |
Guida ASP & MySQLUtilizzare le pagine ASP e farle interagire con il database mySQL |
Guida ASP con i cookieMini guida in sei lezioni per l'utilizzo specifico dei cookies |
Ogni giovedì, direttamente nella tua e-mail: articoli, guide, tutorial e script ASP, ASP.Net, SQL server e IIS.
Iscriviti alla newsletter
|
|
Corso Progettazione database11 Maggio 2012 a Milano |
|
|
Amministratore di Reti Windows Server 200811 Giugno 2012 a Milano |
|
Nessun corso previsto |