|
|
|

|

|
Dicas
|

|
ASP - Active Server Page (Miscelâneas)
|
|
 |
Título da Dica: Criando um formulário de contatos com CDONTS
|
 |
|
|
Postada em 16/10/2003 por ^HEAVY-METAL^
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 = "manuelsansoni@uol.com.br"
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 " & var_nome & ", email " & var_mail & " e fez o seguinte comentário:</font></p><p align=""center""><font face=""Verdana, Arial, Helvetica, sans-serif"" size=""2"">" & var_comentario & "</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 = "manuelsansoni@uol.com.br"
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 "manuelsansoni@uol.com.br"
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.
T+,
|
|
|
|

|