back to top

Inviare mail con ASP: esempi pratici di utilizzo di CDONTS e CDOSYS

E’ possibile inviare mail attraverso una pagina in Classic ASP mediante l’oggetto CDONTS o CDOSYS. In questo articolo vedremo entrambe queste soluzioni.

CDONTS e CDOSYS: cosa sono e che differenze ci sono tra questi due oggetti?

Gli oggetti CDONTS (Collaborative Data Objects for NT Systems) e CDOSYS (Collaborative Data Objects for Windows) sono entrambi utilizzati per inviare e-mail da un server web. Tuttavia, ci sono alcune differenze significative tra i due.

CDONTS è un oggetto disponibile solo sui sistemi operativi Windows NT e 2000 e viene utilizzato per inviare e-mail tramite il protocollo SMTP. CDONTS è una soluzione più vecchia e meno affidabile rispetto a CDOSYS, ma può essere utilizzata in ambienti con configurazioni specifiche o limitate.

Al contrario, CDOSYS è un oggetto più recente e più potente disponibile su tutti i sistemi operativi Windows più recenti ( Windows Server 2003 e versioni successive). CDOSYS supporta una vasta gamma di funzionalità, come l’invio di e-mail con allegati, la formattazione HTML e la gestione degli errori.

Inviare una mail con ASP e CDONTS

Di seguito un esempio di codice ASP per l’invio di email mediante CDONTS:

<%
Set objMail = Server.CreateObject("CDONTS.NewMail")
objMail.From="gigi@provider.it"
objMail.To="pippo@provider.it"
objMail.Subject="Prove Posta"
objMail.Body="La mia prima mail con CDONTS"
objMail.importance=0
objMail.Send
Set objMail = nothing
%>

Inviare una mail con ASP e CDOSYS

Ecco una comoda funzione, da inserire nel proprio file di configurazione del sito, che ci consentirà di chiamare semplicemente una funzione MailTo(), passando a quest’ultima gli opportuni parametri. La funzione che andremo a presentarvi si basa sull’oggetto CDOSYS ed è pertanto compatibile con la maggior parte degli hosting web basati su Windows e che offrono ancora un supporto per Classic ASP:

<%
Function MailTo(M, D, O, M)
    Dim MyMail
    Set MyMail = CreateObject("CDO.Message")
    With MyMail
        .From = M
        .To = D
        .Subject = O
        .TextBody = M
        .Send
    End With
    Set MyMail = Nothing
End Function
%>

La richiameremo così:

<%
Dim mittente, destinatario, oggetto, messaggio
mittente = "mittente@server.ext"
destinatario = "destinatario@server.ext"
oggetto = "Ciao, come stai?"
messaggio = "Non ci sentiamo da tanto tempo, volevo sapere se è tutto ok!"
Call MailTo(mittente, destinatario, oggetto, messaggio)
%>

Altri contenuti interessanti

Pubblicità

Leggi anche...

Aggiungere elementi a un Array in ASP/VBScript

In un precedente articolo abbiamo parlato delle limitazioni di...

Perchè CInt restituisce un errore Overflow?

Utilizzando CInt per la definizione di variabili numeriche può...

Cosa sono chr(10) e chr(13)? E la costante vbCrLf?

All'interno di un codice ASP (o più generalmente, all'interno...

Alla scoperta di VBScript: cos’è, come funziona e come iniziare a fare scripting!

Il VBScript è un semplice linguaggio di scripting adoperabile...

Creare pagine dinamiche con ASP e Database

La potenza di ASP, e di qualsiasi linguaggio di...
Pubblicità