ASP
Você está aqui: Home » ASP » Criando um formulário de contatos com CDONTS
Criando um formulário de contatos com CDONTS

Uma forma simples e eficaz de se mandar um email com informações de um formulário, é o uso do componente do CDONTS ( Collaborative Data Objects for Windows NT Server ), permite o envio de email em formato texto ou HTML.
Abaixo, veja o código em HTML necessário para o formulário:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Contatos - Via CDONTS</title></head>
<body bgcolor="#FFFFFF">
<div align="center">
<form name="form1" action="Enviar_email.asp" >
<p>Nome: <br>
<input type="text" name="txtnome">
</p>
<p>Email: <br>
<input type="text" name="txtemail">
</p>
<p>Comentário: <br>
<textarea name="txtcomentario" cols="50" rows="10"></textarea>
</p>
<p>
<input type="submit" name="Submit" value="Enviar">
</p>
</form>
</div>
</body>
</html>
A action do form esta direcionado para http://www.seuservidor.com.br/suapasta/enviar_email.asp onde é uma url de exemplo, você deverá substituir de acordo com o seu servidor.
Código do arquivo enviar_email.asp
<%
Option Explicit
Dim var_nome, var_mail, var_comentario, var_to, EnviarMail, MsgBody
var_nome = Request.QueryString("txtnome")
var_mail = Request.QueryString("txtemail")
var_comentario = Request.QueryString("txtcomentario")
var_to = "andreluisbassi@hotmail.com"
Set EnviarMail = Server.CreateObject("CDONTS.NewMail")
EnviarMail.To = var_to
EnviarMail.From = var_mail
EnviarMail.Subject = "Meu Site - Contatos"
MsgBody = "<html>" _
& "<head>" _
& "</head>" _
& "<body bgcolor=""#FFFFFF"">" _
& "<p align=""center""><font face=""Verdana, Arial, Helvetica, sans-serif"" size=""2"">Você recebeu uma mensagem de <b>" & var_nome & "</b>, email <b>" & var_mail & "</b> e fez o seguinte comentário:</font></p><p align=""center""><font face=""Verdana, Arial, Helvetica, sans-serif"" size=""2""><b>" & var_comentario & "</b></font></p>" _
& "</body>" _
& "</html>"
EnviarMail.Body = MsgBody
EnviarMail.Importance = 1
EnviarMail.BodyFormat = 0
EnviarMail.MailFormat = 0
EnviarMail.Send
Set EnviarMail = Nothing
Response.redirect "Obrigado.html"
%>
Entendendo o Código:
Option Explicit
Indica que todas as variáveis devem ser declaradas, isso deixa sua aplicação mais rápida.
Dim var_nome, var_mail, var_comentario, var_to, EnviarMail, MsgBody
Logo em seguida declaramos todas as variáveis que serão manipuladas.
var_nome = Request.QueryString("txtnome")
var_mail = Request.QueryString("txtemail")
var_comentario = Request.QueryString("txtcomentario")
Recuperamos os valores digitados no formulário.
var_to = "andreluisbassi@hotmail.com"
Definimos a variável com o email, para aonde as informações serão enviadas.
Set EnviarMail = Server.CreateObject("CDONTS.NewMail")
Instancia o objeto do CDONTS através da variável EnviarMail.
EnviarMail.To = var_to
A propriedade TO permite especificar o endereço do destinatário, onde var_to é a varíavel que esta armazenado o email de destino, que seria "andreluisbassi@hotmail.com"
EnviarMail.From = var_mail
A propriedade From permite especificar o endereço do remetente, onde var_mail é a varíavel que esta armazenado o valor recuperado do campo do formulário Email, que seria Request.QueryString("txtemail")
EnviarMail.Subject = "Meu Site - Contatos"
A propriedade Subject permite especifcar o assunto da mensagem.
A varíavel MsgBody ( veja o conteúdo dela acima ) é onde esta armazenado todo o codigo HTML concatenado e definido como string, para o CDONTS poder processar o email, e quando houver a necessidade de quebrar linha utilize o UnderScore ( _ ) , utilize o & para continuar definindo após a quebra, exemplo:
MsgBody = "HTML" _
& "HEAD" _
& "<TITLE>Exemplo de concatenação de HTML em uma varíavel</TITLE>" _
& "<p align=""center""><font face=""Verdana, Arial, Helvetica, sans-serif"" size=""2"">Você recebeu uma mensagem de" & var_nome & "</p>"
Importante notar que quando existir " ( aspas ) em um código html por exemplo <p align="center"> reformate o código colocando aspas duplas, por exemplo <p align=""center"">
Se necessitar exibir o conteúdo das varíaveis var_nome, var_mail e var_comentario ou até mesmo executar uma função dentro da varíavel MsgBody por exemplo, insira a varíavel ou função entre & por exemplo:
& "<font face=""Verdana, Arial, Helvetica, sans-serif"" size=""2"">Você recebeu uma mensagem de" & var_nome & "</p>"
EnviarMail.Body = MsgBody
A propriedade Body define o texto da mensagem ou do HTML, onde MsgBody é a varíavel que esta armazenado o HTML da mensagem Concatenado e coma programação necessária.
EnviarMail.Importance = 1
A propriedade Importance define o nível de prioridade ao enviar a mensagem, veja a tabela abaixo:
| Valor | Significado |
| 0 | Prioridade Baixa |
| 1 | Prioridade normal (padrão) |
| 2 | Prioridade alta |
EnviarMail.BodyFormat = 0
A propriedade BodyFormat defini qual é o formato que a mensagem será enviada, se for definido o valor 1 a mensagem será enviada como texto, se indicarmos a propriedade por 0, a mensagem será enviada em formato HTML.
EnviarMail.MailFormat = 0
A propriedade MailFormat defini qual o tipo de codificação MIME a ser usado, onde com o valor 0 indica que o MIME interprete o HTML, no caso se usarmos o valor 1 o MIME interpretará a mensagem como texto.
EnviarMail.Send
A propriedade Send, quando é executada, a mensagem é processada e enviada ao seu destinátario.
Set EnviarMail = Nothing
O objeto EnviarMail é encerrado e liberado
Response.redirect "Obrigado.html"
Após enviar a mensagem, redirecionamos para um arquivo em HTML simples, agradecendo o contato.
André Luis Bassi é desenvolvedor em ASP, onde presta serviço para diversas empresas.
André Luis Bassi é Webmaster / DBA / Programador
Outros artigos postados por este autor
- Passe as variaveis por valor sem ByVal
- Guia visual de controles de formulário HTML
- Administre seus bancos de dados remotamente
- Como fazer uma panorâmica 360 graus com equipamentos caseiros
- Curso Adobe Flash - Desenho Avançado
- Retirando o Fundo de uma Foto no Photoshop
Artigos relacionados sobre ASP
- Artigo Arrays II
- Criando um formulário de contatos com CDONTS
- Trabalhando com Arrays
- Criando uma conexão usando provider
- Tipos de dados no SQL Server
- Personalize seu UltraEdit
Parceiros
BR-Linux.org
Criar WEB
Regularização de Imoveis SP
Montagens de Sites
Templates de Sites
Desenvolvedor de Sites
Elaboração de Sites
Produção de Sites
Programador de Sites
Criadores de Sites
Artigos mais acessados
Desenho de Letras - Construindo fontes TTF
Criando um sistema de login
Enviando email em formato HTML em PHP
Menu Circular em 3D
Cargos e salários na área de informática
Como fazer e modificar calendários
Action Script 2.0 ( Primeira Parte )
10 dicas de Webdesign para salvar seu site
Fireworks VS Photoshop
Serviços
Desenvolvimento de Sites e Sistemas WEB
Otimização de Sites (SEO)
Loja Virtual com Sistema Pagseguro
Sistema de Compra Coletiva
Catálogo de Produtos
Parcerias e Soluções de Publicidade
Portifólio Grupo SOS Designers
Fale Conosco







