Invio.asp
--------------------------
codice:
<%@LANGUAGE="VBSCRIPT"%>
<html>
<head><title>Invio delle mail a tutti gli iscritti</title></head>
<%
'Invio l'email
Dim miaMail
Set miaMail = CreateObject("CDONTS.NewMail")
miaMail.From = "inserire l'indirizzo mail del mittente"
miaMail.To = "indirizzo1" & "indirizzo2" & "indirizzo3" & ... & "indirizzoX"
dim strOggMail
strOggMail = "Newsletter - " & request("oggetto")
strBodyMail = ""
strBodyMail = "<html><head><title>Titolo del messaggio</title></head>"
strBodyMail = strBodyMail & "<body bgcolor=#050077>"
strBodyMail = strBodyMail & "<center>"
strBodyMail = strBodyMail & "<table bordercolor=#bfaa68 border=1 cellpadding=0 cellspacing=0>"
strBodyMail = strBodyMail & "<tr><td>"
strBodyMail = strBodyMail & "<table width=550 height=75 bgcolor=#FFFFFF>"
strBodyMail = strBodyMail & "<tr><td width=70 valign=middle>"
strBodyMail = strBodyMail & "<center><img src=Logointestazione.gif></center>"
strBodyMail = strBodyMail & "</td><td width=480 valign=middle>"
strBodyMail = strBodyMail & "<font face=Verdana size=5 color=#f50000><center>"
strBodyMail = strBodyMail & "testo vario</center></font></td>"
strBodyMail = strBodyMail & "</tr></table>"
strBodyMail = strBodyMail & "<table width=550 bgcolor=#FFFFFF><tr><td width=5></td>"
strBodyMail = strBodyMail & "<td width=540 height=2 bgcolor=#050077></td><td width=5></td>"
strBodyMail = strBodyMail & "</tr></table><table width=550 bgcolor=#FFFFFF>"
strBodyMail = strBodyMail & "<tr><td width=5></td><td width=540 height=15 bgcolor=#ffffff></td><td width=5></td>"
strBodyMail = strBodyMail & "</tr></table><table width=550 bgcolor=#FFFFFF>"
strBodyMail = strBodyMail & "<tr><td width=15></td><td width=520><font face=Verdana size=1 color=#000000>"
strBodyMail = strBodyMail & "Oggetto:" & request("oggetto")
strBodyMail = strBodyMail & "</font></td><td width=15></td></tr></table>"
strBodyMail = strBodyMail & "<table width=550 bgcolor=#FFFFFF>"
strBodyMail = strBodyMail & "<tr><td width=5></td><td width=540 height=10 bgcolor=#ffffff></td>"
strBodyMail = strBodyMail & "<td width=5></td></tr></table>"
strBodyMail = strBodyMail & "<table width=550 bgcolor=#FFFFFF>"
strBodyMail = strBodyMail & "<tr><td width=15></td><td width=520>"
strBodyMail = strBodyMail & "<font face=Verdana size=1 color=#000000>"
strBodyMail = strBodyMail & "<p align=justify>" & request("Messaggio")
strBodyMail = strBodyMail & "</p></font></td><td width=15></td></tr></table>"
strBodyMail = strBodyMail & "<table width=550 bgcolor=#FFFFFF><tr><td width=5></td>"
strBodyMail = strBodyMail & "<td width=540 height=30 bgcolor=#ffffff></td>"
strBodyMail = strBodyMail & "<td width=5></td></tr></table>"
strBodyMail = strBodyMail & "<table width=550 bgcolor=#FFFFFF><tr><td width=5></td>"
strBodyMail = strBodyMail & "<td width=540 height=2 bgcolor=#050077></td>"
strBodyMail = strBodyMail & "<td width=5></td></tr></table>"
strBodyMail = strBodyMail & "<table width=550 bgcolor=#FFFFFF><tr><td width=5></td><td width=540>"
strBodyMail = strBodyMail & "<font face=Verdana size=1 color=#f50000>"
strBodyMail = strBodyMail & " testo vario XXXXXX"
strBodyMail = strBodyMail & "</font></td><td width=5></td></tr></table>"
strBodyMail = strBodyMail & "<table width=550 heigt=15 bgcolor=#ffffff>"
strBodyMail = strBodyMail & "<tr><td height=15></td></tr></table></td></tr></table></center></body></html>"
miaMail.Subject = strOggMail
miaMail.BodyFormat = 0
miaMail.MailFormat = 0
miaMail.Body = strBodyMail
miaMail.Send
Set miaMail = Nothing
%>
<body alink="#050077" link="#050077" vlink="#050077">
<font face="verdana" color="#050077" size="1">Invio News Avvenuto con successo!!
Ritorna indietro
</font>
</body>
</html>
Questo il codice di una ipotetica pagina in formato html che debba essere inviata via mail
Ora analizzeremo nel dettaglio quello che si deve modificare per rendere questa struttura adatta al nostro uso.
1) il componente CDONTS è fondamentale perchè l'invio abbia luogo e anche se non è l'unico utilizzabile, in tal senso si potrebbe preferire utilizzare il comando (ASPMail), questo elemento è risultato avere maggiore compatibilità rispetto all'altro.
Questa parte del codice va lasciata inalterata.
2) Il mittente del messaggio:
codice:
miaMail.From = "inserire l'indirizzo mail del mittente"
E' ovvio che fra "" vada inserito l'indirizzo di posta elettronica del mittente... quindi il nostro "info@dominio.com"
3) I destinatari del messaggio:
codice:
miaMail.To = "indirizzo1" & "indirizzo2" & "indirizzo3" & ... & "indirizzoX"
Gli indirizzi dei destinatari vanno inseriti fra "", come per il mittente e fra ogni indirizzo al fine di dar luogo ad un elenco di indirizzi va inserito con addebita spaziatura il simbolo "&" almeno fino a quando si giunge all'ultimo indirizzo dopo il quale non si deve aggiungere più nulla.
4) L'oggetto del messaggio è quello che comunemente nel leggere una mail da Outlook ci appare subito sotto l'indirizzo del mittente e del destinatario quindi esternamente al corpo della mail nella pagina questi viene rappresentato dal comando qui sotto riportato e può avere delle varianti che andiamo ad analizzare:
4.1) ipotizziamo che l'oggetto del messaggio voglia essere generico e che non debba legare con l'oggetto del messaggio inserito nella pagina precedente allora avremo un codice di questo genere:
codice:
strOggMail = "Newsletter del sito"
4.2) Altrimenti diciamo che vogliamo venga riportato oltre a del testo statico anche l'oggetto precedentemente inserito e allora il codice sarà qualcosa come:
codice:
strOggMail = "Newsletter - " & request("oggetto")
Arrivati a questo punto la struttura generale del messaggio è stata ampiamente spiegata, non ci resta che modificare il codice html che darà luogo alla pagina che desideriamo venga inviata e per fare questo dobbiamo analizzare la sezione legata alla variabile "strBodyMail"
Questa sezione:
codice:
strBodyMail = ""
strBodyMail = "<html><head><title>Titolo del messaggio</title></head>"
strBodyMail = strBodyMail & "<body bgcolor=#050077>"
strBodyMail = strBodyMail & "<center>"
strBodyMail = strBodyMail & "<table bordercolor=#bfaa68 border=1 cellpadding=0 cellspacing=0>"
strBodyMail = strBodyMail & "<tr><td>"
strBodyMail = strBodyMail & "<table width=550 height=75 bgcolor=#FFFFFF>"
strBodyMail = strBodyMail & "<tr><td width=70 valign=middle>"
strBodyMail = strBodyMail & "<center><img src=Logointestazione.gif></center>"
strBodyMail = strBodyMail & "</td><td width=480 valign=middle>"
strBodyMail = strBodyMail & "<font face=Verdana size=5 color=#f50000><center>"
strBodyMail = strBodyMail & "testo vario</center></font></td>"
strBodyMail = strBodyMail & "</tr></table>"
strBodyMail = strBodyMail & "<table width=550 bgcolor=#FFFFFF><tr><td width=5></td>"
strBodyMail = strBodyMail & "<td width=540 height=2 bgcolor=#050077></td><td width=5></td>"
strBodyMail = strBodyMail & "</tr></table><table width=550 bgcolor=#FFFFFF>"
strBodyMail = strBodyMail & "<tr><td width=5></td><td width=540 height=15 bgcolor=#ffffff></td><td width=5></td>"
strBodyMail = strBodyMail & "</tr></table><table width=550 bgcolor=#FFFFFF>"
strBodyMail = strBodyMail & "<tr><td width=15></td><td width=520><font face=Verdana size=1 color=#000000>"
strBodyMail = strBodyMail & "Oggetto:" & request("oggetto")
strBodyMail = strBodyMail & "</font></td><td width=15></td></tr></table>"
strBodyMail = strBodyMail & "<table width=550 bgcolor=#FFFFFF>"
strBodyMail = strBodyMail & "<tr><td width=5></td><td width=540 height=10 bgcolor=#ffffff></td>"
strBodyMail = strBodyMail & "<td width=5></td></tr></table>"
strBodyMail = strBodyMail & "<table width=550 bgcolor=#FFFFFF>"
strBodyMail = strBodyMail & "<tr><td width=15></td><td width=520>"
strBodyMail = strBodyMail & "<font face=Verdana size=1 color=#000000>"
strBodyMail = strBodyMail & "<p align=justify>" & request("Messaggio")
strBodyMail = strBodyMail & "</p></font></td><td width=15></td></tr></table>"
strBodyMail = strBodyMail & "<table width=550 bgcolor=#FFFFFF><tr><td width=5></td>"
strBodyMail = strBodyMail & "<td width=540 height=30 bgcolor=#ffffff></td>"
strBodyMail = strBodyMail & "<td width=5></td></tr></table>"
strBodyMail = strBodyMail & "<table width=550 bgcolor=#FFFFFF><tr><td width=5></td>"
strBodyMail = strBodyMail & "<td width=540 height=2 bgcolor=#050077></td>"
strBodyMail = strBodyMail & "<td width=5></td></tr></table>"
strBodyMail = strBodyMail & "<table width=550 bgcolor=#FFFFFF><tr><td width=5></td><td width=540>"
strBodyMail = strBodyMail & "<font face=Verdana size=1 color=#f50000>"
strBodyMail = strBodyMail & " testo vario XXXXXX"
strBodyMail = strBodyMail & "</font></td><td width=5></td></tr></table>"
strBodyMail = strBodyMail & "<table width=550 heigt=15 bgcolor=#ffffff>"
strBodyMail = strBodyMail & "<tr><td height=15></td></tr></table></td></tr></table></center></body></html>"
che io ho rappresentato così solamente perchè l'ho brutalmente tagliata da una newsletter che mi sono creato per un sito è completamente modificabile a seconda dell'aspetto grafico che ci interessa assuma.
Le uniche indicazioni che vanno seguite sono legate alla struttura della variabile.
Infatti come è possibile notare ogni qual volta si desideri andare a capo ed aggiungere una nuova riga di comando sarà necessario scrivere prima questo:
codice:
strBodyMail = strBodyMail & ""
inserendo ovviamente il codice html fra gli apici.
Il motivo per cui io ho scritto tante righe è prettamente legato all'ordine e alla facilità di comprensione del codice, tutto il codice html sarebbe tranquillamente possibile scriverlo su una sola riga, anche se poi sfido chiunque ad avere facilità nella sua lettura e nella ricerca di un eventuale errore di sintassi.
Altro elemento importante in questa sezione è l'inserimento dei campi "Oggetto" e "Messaggio"
questi due campi andranno inseriti nel contesto della pagina html, nella posizione che più ci interessa e facendo uso del sequente comando:
codice:
request("Oggetto")
request("Messaggio")
questi due campi inseriti all'interno di un contesto html assumeranno poi una struttura con la seguente forma:
codice:
strBodyMail = strBodyMail & "codice html" & request("Messaggio") & "codice html"
Tutto il restante codice sucessivo alla variabile "strBodyMail" va lasciato inalterato.
Questa struttura che è poi anche la struttura per la creazione di una newsletter artigianale può assumere differenti forme ed infatti l'esempio cita una serie di indirizzi di posta elettronica introdotti manualmente ma è anche possibile sostituirli con un codice che estragga questi indirizzi direttamente da una tabella di un DB pur non cambiando la struttura generale della pagina, ma questo è un altro paio di maniche.