Cdosys, formMail in asp per Hosting Windows Rubalo.it

I componenti cdonts e cdosys fanno parte del sistema operativo utilizzato dai nostri server Hosting Windows: sono componeni semplici da utilizzare e decisamente performanti.

Sono in grado di ricevere informazioni da qualunque tipo di campi modulo consenentedo di creare moduli di qualunque tipo e inviarli alla pagina che ne farà l'elaborazione.

Di seguito mostreremo un esempio di utilizzo di cdosys e uno per cdonts; tramite il bottone download potrete scaricare entrambi gli esempi di script.
 
Esempio d'uso di cdonts (cambiare info@rubalo.it con il proprio indirizzo di posta):


<%
Set objMail = Server.CreateObject("CDONTS.NewMail")
objMail.Send "info@rubalo.it", "info@rubalo.it", "Prove Posta", "La mia prima mail con CDONTS", 0
Set objMail = nothing
%>


Esempio d'uso di cdosys (seguire le indicazioni dei commenti per la personalizzazione del form):

<!--METADATA TYPE="typelib" UUID="CD000000-8B95-11D1-82DB-00C04FB1625D" NAME="CDO for Windows 2000 Type Library" -->
<!--METADATA TYPE="typelib" UUID="00000205-0000-0010-8000-00AA006D2EA4" NAME="ADODB Type Library" -->
<%
'============ specifiche MSDN================
'* il corpo finale del messaggio contiene tutti i campi *
'* inseriti nella pagina html, è possibile inserire *
'* tutti i campi che servono nel modulo di invio senza *
'* dover fare altre configurazioni. *
'=============================================================

DIM corpoMessaggio, numeroCampi, invioA, invioDa, nomeDominio, indirizzoIp, modulo, browserSistemaOperativo

'* voce da modificare con il proprio indirizzo email

invioA = "miacasella@miodominio.it"

'* voce da modificare con un indirizzo email che funga da mittente:
'* in caso di errore riceverete notifica a questo indirizzo un MAILER-DAEMON
'* dato che cdosys supporta questa notifica

invioDa = "emailmittente@technet.it"

'------------fine modifiche necessarie------------------

nomeDominio = Request.ServerVariables("HTTP_HOST")
indirizzoIp = Request.ServerVariables("REMOTE_ADDR")
modulo = Request.ServerVariables("HTTP_REFERER")
browserSistemaOperativo = Request.ServerVariables("HTTP_USER_AGENT")

'*rilevo i campi del form

FOR numeroCampi = 1 TO (Request.Form.Count() - 1)
IF NOT Request.Form(numeroCampi) = "" THEN
corpoMessaggio = corpoMessaggio & vbCrLf & Request.Form.Key(numeroCampi) & " = " & Trim(Request.Form(numeroCampi))
END IF
NEXT

'* creo gli oggetti cdosys sul server e li gestisco

DIM iMsg, Flds, iConf

Set iMsg = CreateObject("CDO.Message")
Set iConf = CreateObject("CDO.Configuration")
Set Flds = iConf.Fields

Flds(cdoSendUsingMethod) = cdoSendUsingPort
Flds(cdoSMTPServer) = "mail.rubalo.it"
Flds(cdoSMTPServerPort) = 25
Flds(cdoSMTPAuthenticate) = cdoAnonymous ' 0
Flds.Update

With iMsg
Set .Configuration = iConf
.To = invioA
.From = Request.Form("email")
.Sender = invioDa
.Subject = "Contatto dal dominio " & nomeDominio
.TextBody = "Questi i dati inseriti nel modulo presente alla pagina " & modulo & " da utente con indirizzo IP " & indirizzoIp & " browser e sistema operativo " & browserSistemaOperativo & vbCrLf & corpoMessaggio & ""
.Send
End With
%>
<script>

'* sostituire il nome pagina grazie.asp con la pagina di redirect di invio modulo
document.location.replace('grazie.asp');
</script>