Oficina da Net Logo

Mala direta e-mail com seleção por checkbox

Exemplo de envio de e-mail para usuários em base de dados utilizando o componente CDONTS podendo escolher os usuários através de checkbox.

Por | @oficinadanet Programação Pular para comentários
Primeiro temos que ter um banco de dados para buscar as informações dos usuários, para isto crie um banco de dados com uma tabela com os seguintes campos:
nome | email

Abaixo o código da página para listar os dados dos usuários e montar o checkbox para escolha.
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>


Envio E-mail



  
  
    
  
  
  
    
  
 

<%
'Aqui vamos abrir a conexão para resgatar valores do banco de dados
strCon = "DBQ=c:inetpubwwwrootseu_banco_de_dados.mdb;Driver={Microsoft Access Driver (*.mdb)};"
Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.CursorLocation = 3
objRS.CursorType = 0
objRS.LockType = 1
strSQL = "SELECT * FROM SUA_TABELA"
objRS.Open strSQL, strCon
If not objRS.EOF then
%>
      
        
        
          
        
        
        
          
        
      
 

<%
'Aqui faremos o action apontando para a página de envio.
%>
            

              
              

              

              
                
                  
                  
                  
                
<%
'Aqui faremos a alternação das linhas da tabela, lembrando que não devemos colocar fora da linha ASP.  
objRS.MoveFirst
While Not objRS.EOF
if cor ="#FFFFFF" then
cor = "#CCCCCC"
else
cor ="#FFFFFF"
end if
response.Write ""
%>
                
<%
'Listaremos nome no recordset.
%>
                  
<%
'Listaremos e-mail no recordset.
%>
                  
                
<%
objRS.MoveNext
Wend
Else
%>
                Não existe nomes a serem listados
<%
End If
%>
              
>NomeE-mail
<%
'Passamos valor do e-mail para checkbox que separa valores escolhidos por ",".
%>
                    "/>
<%=objRS("nome")%><%=objRS("email")%>

            



<%
objRS.close
%>


O resultado da página acima:
Mala direta e-mail com seleção por checkbox

Agora basta criar a página onde será efetuado o disparo de e-mail em nosso caso set.asp segue o código:
<%
'Resgata valor checkbox separados por vírgula.
strP=request.form("box")

ArrP=split( strP , "," ) 'No caso coloquei virgula, pois o separador é este, caso seja outro basta mudara para o desejado.

'Faz o loop para enviar até que dispare todos os selecionados.
for i = 0 to UBound(ArrP)
Set objmail = Server.CreateObject("CDONTS.NewMail")

objMail.From = "seu_email@seu_provedor.com.br"
objMail.To = ArrP(i)
objMail.Cc = ""
objMail.Bcc = ""

objMail.Subject = objRS("titulo")
sHTML = sHTML & ""
sHTML = sHTML & ""
sHTML = sHTML & "Envio e-mail"
sHTML = sHTML & ""
sHTML = sHTML & ""
sHTML = sHTML & "Olá você usou o sistema de disparo de e-mail em massa!"
sHTML = sHTML & ""
sHTML = sHTML & ""

objMail.MailFormat = 0
objMail.BodyFormat = 0
objMail.body = sHTML

objMail.Send
sHTML = ""

On Error Resume Next
set objMail = Nothing

if Err <> 0 Then
Response.Write "Foi encontrado um erro (" & Err.Description & ")."
Response.End
End if

'Fim loop.
next
ObjRS.close

'Gera alerta de envio ao fim do código.
response.Write("E-mail enviado com sucesso!")
%>


Neste exemplo vimos como disparar e-mail's para usuários do banco de dados escolhindos através de um checkbox.

Espero que ajude no dia-dia.

Qualquer dúvida entre em contato comigo deixando um comentário.

Abraços!


Alexandre de Luccia

MAIS SOBRE:
Comentários
Carregar comentários