SendMail em ASP - Artigo para Envio de E-mail em ASP



Edson Pereira Santos1

¹ Belo Horizonte – MG – Brasil

edson@yahoo.com.br
edson@tryadecode.com

Abstract.  In this article I demonstrate how to make a page for sending e-    mails in asp, both to deduce that you have the form of transmission of data at another site and has a basic knowledge of programming.

Resumo. Neste artigo eu demonstrarei como fazer uma pagina de envio de e-mails em asp, para tanto deduzirei que você já fez o formulário de envio de dados em outra pagina e que tem um conhecimento básico de programação.

1.    Recuperando as informações enviadas pelo formulário

Abra o notepad (Blocos de Notas), como esta pagina somente será utilizada para enviar o e-mail, nós não precisaremos colocar a tags HTML nela. Para inserir um conteúdo asp em uma pagina você deve colocá-lo dentro de “<%” e “%>”, pois assim o browser reconhecerá automaticamente que se trata de um código asp.

Então para começa, digite <%, tecle enter, digite %> e tecle enter novamente.

Deverá ficar assim:

<%

(código fonte irá ficar aqui.)

%>

Sendo que o código fonte deverá ser escrito entre os símbolos:

Neste exemplo eu supus que o formulário que enviou os dados tinha apenas 3 variáveis(nome, email e mensagem), portanto para formulários com mais variáveis(campos), basta você acrescentar mais campos no código.

O primeiro código a ser digitado é o para recuperar as variáveis que o formulário enviou e o código asp que faz isso é o RequestForm.

Portanto para as três variáveis irá ficar assim:

<%

nome = RequestForm(“nome”)  ‘aqui nós criamos uma variável chamada

                                                     ‘nome que receberá o nome enviado

                                                     ‘através do formulário. Note que o nome a ser

                                         ‘recuperado esta entre aspas, isto é obrigatório.

 

email = RequestForm(“email”)

mensagem = RequestForm(“mensagem”)

%>

 

2.    Formatando o corpo do e-mail

Agora que já recuperamos as variáveis vamos formatar o e-mail que será enviado. Para tanto vamos criar uma variável a qual iremos concatenar todo o corpo do e-mail, já com a formatação, para posteriormente a enviarmos.

Nossa variável terá o nome de corpoEmail e primeiramente vamos formatar o corpo do e-mail, para tanto utilizaremos de comandos HTML, que como não é o nosso foco aqui e portanto eu apenas irei os inserir.

 

<%

nome = RequestForm(“nome”)  ‘aqui nós criamos uma variável chamada

                                                     ‘nome que receberá o nome enviado

                                                     ‘através do formulário. Note que o nome a ser

                                         ‘recuperado esta entre aspas, isto é obrigatório.

email = RequestForm(“email”)

mensagem = RequestForm(“mensagem”)

corpoEmail = corpoEmail & "<font face= 'Verdana, Arial, Helvetica, sans-serif' size = '2' color = '#555555'>”    ‘este código tem que ficar em uma só linha

corpoEmail = corpoEmail & “Nome: ” & nome & “<br>”

corpoEmail = corpoEmail & “Email: ” & email & ”<br>”

corpoEmail = corpoEmail & “Mensagem” & mensagem & “<br>”

corpoEmail = corpoEmail & "</font>"

%>

 

Explicando o código:

corpoEmail = corpoEmail & ”Nome: ” & nome & “<br>”

Primeiramente é importante saber que o comando para concatenar duas Strings em aspe o e comercial (&), portanto no código eu mandei a variável corpo receber ela mesma(para não perder o conteúdo que estava nela) mais um string contendo o nome do campos(ex: “Nome: ”- serve para as pessoas conseguirem diferenciar os campos no e-mail.) e a variável com o campo em si (ex: nome – esta é a variável onde nós recuperamos o nome que foi enviado via formulário).

Já o comandos abaixo são comandos de formatação de texto em HTML , portanto não entraremos em detalhes sobre eles aqui, mas vale saber que para aumentar o tamanho do texto do email, basta aumenta o numero do campo size e para mudar a cor da letra basta alterar o campo color.

"<font face= 'Verdana, Arial, Helvetica, sans-serif' size = '2' color = '#555555'>"

"</font>"

Ps. O corpo do e-mail deve ficar entre as tags deste comando, assim como eu coloquei no código.

3.    Configurando o envio do e-mail

Agora com o corpo do e-mail formatado nós vamos começar a digitar os comandos de envio do mesmo. Para isto criaremos um objeto MailServer:

 

Set Mail = Server.CreateObject("Persits.MailSender")

 

Eu o dei o nome de Mail, mas você pode colocar qualquer nome de sua preferência. Agora vamos utilizar as funções deste objeto para configura o envio do e-mail:

 

Mail.Host = "Server.com"     ‘aqui você deve colocar o endereço

                                             ‘do seu servidor de emails.

 

Mail.From = “a@a.com.br “    ‘aqui você deve colocar o seu e-mail(remetente),

                                              ‘o seu e-mail no servidor.

Mail.FromName = "E-mail enviado pelo Site"   ‘Campo opcional, nele você pode

                                  ‘colocar o nome ‘do e-mail e o mesmo irá aparecer no lugar do

                                  ‘e-mail no programa de e-mail do destinatário.

 

destinatario="a@a.com.br"  ‘aqui você deve colocar o destinatário do e-mail,

                                              ‘ou seja, a pessoa que irá o receber, normalmente

                                             ‘você mesmo (seu próprio e-mail).

Mail.AddAddress destinatario    ‘aqui eu estou inserindo o destinatário

                                                   ‘na função AssAddress, não altere.

Mail.IsHTML = True       ‘ coloque true ou false aqui, para enviar ou não o e-mail

                                       ‘ em formato HTML

 

Mail.Subject = "Email de Teste enviado pelo site"     ‘aqui você deve colocar

                                                                       ‘ o assunto do e-mail.

 

Mail.Body = corpoEmail        ‘na função Boby nó colocamos a variável com

                                              ‘o corpo do e-mail.

Obs.: Repare que todos os dados passados para as funções, com exceção das variáveis, estão entre aspas duplas, isto é obrigatório.

 

4.    Enviando o e-mail e tratando erros

Para finalizar agora seria só digitarmos o comando send (Mail.Send) e enviar o e-mail, mas o código não fiaria bom, pois não saberíamos se o e-mail realmente teria ido. Portanto para deixarmos o nosso código mais robusto eu vou inserir mais algumas linhas para tratar eventuais erros de envio do e-mail, onde será exibida uma mensagem avisando se o e-mail foi o não enviado, lembro quês essas linhas são opcionais.

 

 

<%

nome = RequestForm(“nome”)  ‘aqui nós criamos uma variável chamada

                                                     ‘nome que receberá o nome enviado

                                                     ‘através do formulário. Note que o nome a ser

                                         ‘recuperado esta entre aspas, isto é obrigatório.

 

email = RequestForm(“email”)

mensagem = RequestForm(“mensagem”)

corpoEmail = corpoEmail & "<font face= 'Verdana, Arial, Helvetica, sans-serif' size = '2' color = '#555555'>"   ‘este código tem que ficar em uma só linha

corpoEmail = corpoEmail & “Nome: ” & nome & “<br>”

corpoEmail = corpoEmail & “Email: ” & email & ”<br>”

corpoEmail = corpoEmail & “Mensagem” & mensagem & “<br>”

corpoEmail = corpoEmail & "</font>"

Set Mail = Server.CreateObject("Persits.MailSender")

 

Mail.Host = "Server.com"          ‘aqui você deve colocar o endereço do seu servidor

                                                  ‘de emails.

 

Mail.From = “a@a.com.br “     ‘aqui você deve colocar o seu e-mail(remetente),

                                                ‘ o seu e-mail no servidor

Mail.FromName = "E-mail enviado pelo Site"     ‘Campo opcional, nele você

                                                              ‘pode colocar o nome do e-mail e o mesmo irá

                              ‘aparecer no lugar do e-mail no programa de e-mail do destinatário.

 

destinatario="a@a.com.br"    ‘aqui você deve colocar o destinatário do e-mail,

                                               ‘ ou seja, a pessoa que irá o receber, normalmente

                                              ‘ você mesmo (seu próprio e-mail).

Mail.AddAddress destinatario             ‘aqui eu estou inserindo o destinatário

                                                              ‘na função AssAddress, não altere.

 

Mail.IsHTML = True    ‘ coloque true ou false aqui, para enviar ou não o e-mail

                                     ‘ em formato HTML

Mail.Subject = "Email de Teste enviado pelo site"     ‘aqui você deve colocar

                                                                       ‘ o assunto do e-mail.

 

Mail.Body = corpoEmail        ‘na função Boby nó colocamos a variável com

                                              ‘o corpo do e-mail.

‘envio do e-mail

erro = ""

sucesso = False

On Error Resume Next     'Verifica erros

Mail.Send                  'Envia mensagem

 

If Err <> 0 Then

erro = Err.Description

else

sucesso = True

End If

Set Mail = nothing

%>

<% If erro <> "" Then%>      ‘mensagem caso falha

Ocorreu um erro: <% = erro %>

<% End If %>

<% If sucesso Then%>     ‘mensagem caso sucesso

Mensagem enviada para <% = destinatario %> com sucesso.

<% End If %>

 

Obs.: Você deve ter notado que no código eu coloquei algumas observações, mas você não precisa retirá-las se não quiser, pois elas estão no formato de comentários e portanto não iram interferir na execução da pagina.

Nota: Para criar comentários em asp, você deve utilizar aspas simples ( ‘ ).

Agora é só salvar o arquivo com a extensão “asp” e direcionar o campo action do formulário de e-mail para a pagina que você acabou de criar. Lembre-se que scripts em asp só funcionam quando estão publicados em um servidor.


Autor: Edson Pereira Santos


Artigos Relacionados


Longe De Ti

Divagando

País De Duas Faces

"amor E Vida"

Maior LiÇÃo De Vida

O Processo Da Independência Do Brasil

Theo De Carvalho - Segundo AniversÁrio