Tópico:Formulários utilizando "ASPeMail"

De Wiki Nomer

O ASPeMail é um componente que possibilita enviar mensagens de e-mail através de páginas Web. Esse objeto é normalmente utilizado para desenvolvimento de formulários e só está disponível para hospedagens Windows.

Disponibilizamos um exemplo do ASPeMail para que você possa utilizá-lo em seu site. Em “<--Início ASP-->” estão os códigos ASP para envio do e-mail e em “<--Início HTML-->” você encontra a parte responsável por chamar os códigos ASP para o envio do e-mail:

<--Início ASP--> (não copie essa linha)

<%
Dim Mail, strFromName, strFromEmail, strToEmail, strSubject 
Dim strBody, strThisPage, bValidInput, strhost 

' Retorna o nome do arquivo de script e a url da pagina
strThisPage = Request.ServerVariables("SCRIPT_NAME")
strReferringPage = Request.ServerVariables("HTTP_REFERER")

'nome do Servidor
strhost = "mail.dominio.com.br" 

'nome do remetente
strFromName = Trim(Request.Form("txtFromName"))

'endereço de e-mail do remetente
strFromEmail = Trim(Request.Form("txtFromEmail"))

'endereço do destinatário
strToEmail = Trim(Request.Form("txtToEmail"))

'corpo da mensagem
strSubject = "Testando o ASPEMAIL"
strBody = Trim(Request.Form("txtMessage"))

'monta o corpo da mensagem
strBody = ""
strBody = strBody & "Mensagem" 

'validação dos dados
bValida_Entrada = True
bValida_Entrada = bValida_Entrada And strFromName <> ""
bValida_Entrada = bValida_Entrada And Valida_Email(strFromEmail)
bValida_Entrada = bValida_Entrada And Valida_Email(strToEmail)

'se o e-mail é válido envia a mensagem
If bValida_Entrada Then
Set Mail = Server.CreateObject("Persits.MailSender") 

Mail.Host = strHost
Mail.From = strFromEmail
Mail.FromName = strFromName
Mail.AddAddress strToEmail
Mail.Subject = strSubject
Mail.Body = strBody

on error resume next

Mail.Send
mensagem_erro = ""
if err <> 0 then
mensagem_erro = "Ocorreu o seguinte erro durante o envio do e-mail: " & Err.description
end if

Set Mail = Nothing

on error goto 0
Response.Write "<b>Sua mensagem foi enviada com sucesso.</b>"

Else

If "http://" & Request.ServerVariables("HTTP_HOST") & strThisPage = strReferringPage Then
Response.Write "Ocorreu um erro . Verifique suas informações: " & "<BR>" & vbCrLf
End If

'exibe o formulário
Exibe_Formulario strThisPage, strFromName, strFromEmail, strToEmail, strBody
End If%>

<%
'verifica se o e-mail é válido
Function Valida_Email(strEmail)
Dim bIsValid
bIsValid = True
If Len(strEmail) < 5 Then
bIsValid = False
Else
If Instr(1, strEmail, " ") <> 0 Then
bIsValid = False
Else
If InStr(1, strEmail, "@", 1) < 2 Then
bIsValid = False
Else
If InStrRev(strEmail, ".") < InStr(1, strEmail, "@", 1) + 2 Then
bIsValid = False
End If
End If
End If
End If
Valida_Email = bIsValid
End Function%>

<%Sub Exibe_Formulario(strPageName, strFromName, strFromEmail, strToEmail, strBody)%>

<html>
<body>
<FORM ACTION="<%= strPageName %>" METHOD="post">
<TABLE BORDER="0">
<TR><TD VALIGN="top" ALIGN="right"><STRONG>Seu Nome:</STRONG></TD>
<TD><INPUT TYPE="text" NAME="txtFromName" VALUE="<%= strFromName %>" SIZE="30"></TD></TR>

<TR><TD VALIGN="top" ALIGN="right"><STRONG>E-mail do Remetente :</STRONG></TD>
<TD><INPUT TYPE="text" NAME="txtFromEmail" VALUE="<%= strFromEmail %>" SIZE="50"></TD></TR>

<TR><TD VALIGN="top" ALIGN="right"><STRONG>E-mail do destinatário:</STRONG></TD>
<TD><INPUT TYPE="text" NAME="txtToEmail" VALUE="<%= strToEmail %>" SIZE="50"></TD></TR>

<TR><TD VALIGN="top" ALIGN="right"><STRONG>Mensagem:</STRONG></TD>
<TD><TEXTAREA NAME="txtMessage" COLS="50" ROWS="5"><%= strBody %></TEXTAREA></TR>

<TR><TD></TD>
<TD><INPUT TYPE="reset" VALUE="Limpar Formulário">  <INPUT TYPE="submit" VALUE="Enviar E-mail" ></TD></TR>
</TABLE>
</FORM>
</body>
</html>
<%End Sub%>

<--Fim HTML--> (não copie essa linha)