Il bello del web è quello di migliorarsi attingendo a ciò che è stato fatto, l'evoluzione sarebbe lentissima se ognuno si dovesse riscrivere sempre tutto no?
Il codice lo posto per tutti, occhio però che funziona con IIS e windows server 2003 se il win è più vecchio occorre cambiare un'oggetto...
codice:
Public Function CheckEmail(str)
Dim objER, result
Set objER = New RegExp 'istanzia l'oggetto REGULAR EXPRESSION
objER.Global = True 'cerca il pattern in tutta la stringa di input
objER.IgnoreCase = True 'nessuna differenza fra maiuscole/minuscole
objER.Pattern = "^[\w\.-]+@[\w\.-]+\.[a-z]{2,3}$" 'Espressione Regolare
result = objER.Test(str) 'verifica la corrispondenza con il pattern
Set objER = Nothing
CheckEmail = result
End Function
Public Function SendMail()
DIM iMsg, Flds, iConf, VerMail, femail
fnome = Request.QueryString("fnome")
femail = Request.QueryString("femail")
fmessaggio = Request.QueryString("fmessaggio")
VerMail= CheckEmail(femail)
if ((fnome <> "") AND (fmessaggio <> "") AND VerMail) Then
Set iMsg = CreateObject("CDO.Message")
Set iConf = CreateObject("CDO.Configuration")
Set Flds = iConf.Fields
Flds(cdoSendUsingMethod) = cdoSendUsingPort
Flds(cdoSMTPServer) = "smtp.aruba.it"
Flds(cdoSMTPServerPort) = 25
Flds(cdoSMTPAuthenticate) = cdoAnonymous
Flds.Update
With iMsg
Set .Configuration = iConf
.To = "info@tuamail.com"
.From = femail
.Sender = femail
.Subject = "OGGETTO DEL MESSAGGIO"
.TextBody ="Nome: " + fnome + vbCrLf + "Messaggio: " + fmessaggio
.Send
End With
End If
End Function
La funzione SendMail() invia effettivamente la mail, l'atra usa le espressioni regolari per controllare la giusta formattazione dell'indirizzo del mittente.
I parametri arrivano dalle querystring del form.
L'html e il funzionamento lo vedi a www.giuseppequaro.com/contatti.asp, ma vi prego di non mandare e-mail inutili, il sito lo gestisco io, ma la mail è personale del mio amico...