Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

*Marcinha*

a enviar e-mail...

Recommended Posts

Colegas... estou com problemas..

 

Eu tenho esse código, ele envia emails de acordo com e-mail´s listados na variavel email:

 

email = "marcia_jordana@bol.com.br, marciajordana@hotmail.com, marcia_jordana@ig.com.br"VetMail = Split(email, ", ")For i = 0 to ubound(VetMail)    Mail.From = "marcia@equipaindustria.com.br"    Mail.FromName = "Marcia"    Mail.AddAddress Trim(VetMail(i))    Mail.AddReplyTo "marcia@equipaindustria.com.br"    Mail.Subject = "Teste de envio de email 10"    Mail.Body = "Teste da body"    on error resume next    If Mail.Send Then         Response.write "<br><center>Enviando email para " & Vetmail(i) & "</center><br>"     Else        Response.Write "Erro " & Mail.Response    End IfNext

O código funciona...

Só que o primeiro e-mail da lista recebe 3 e-mails... o segundo e o terceiro recebem 1... :huh:

 

 

;) Obrigada...

Compartilhar este post


Link para o post
Compartilhar em outros sites
on error resume next

email = "marcia_jordana@bol.com.br, marciajordana@hotmail.com, marcia_jordana@ig.com.br"
VetMail = Split(email, ", ")

For i = LBound(VetEmail) to ubound(VetMail)

  Mail.From = "marcia@equipaindustria.com.br"
  Mail.FromName = "Marcia"
  Mail.AddAddress Trim(VetMail(i))
  Mail.AddReplyTo "marcia@equipaindustria.com.br"
  Mail.Subject = "Teste de envio de email 10"
  Mail.Body = "Teste da body"

  If Mail.Send Then 
      Response.write "<br><center>Enviando email para " & Vetmail(i) & "</center><br>" 
  Else
      Response.Write "Erro " & Mail.Response
  End If

Next

Fiz pequenas alterações mas, aparentemente, não há nenhum erro!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Salfado...Eu testei o codigo que você alterou... só que ele envia apenas para o primeiro da lista...eu dei um response.write no lbound e não retornou nada...Diego... eu alterei a ordem e o primeiro da lista continua recebendo três e-mails

Compartilhar este post


Link para o post
Compartilhar em outros sites

Salfado? eu???

 

Desculpe o erro, coloquei:

For i = LBound(VetEmail) to ubound(VetMail)
ao invés de:
For i = LBound(Vetmail) to ubound(VetMail)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Detalhes tão pequenos de nós 2,hehe...da uma olha ai...tu ta adicionando um email...e não zerando e colokando um email...no caso caso no 1º loop tu coloka o mail do bol,no 2º loop o do bol já ta na lista de email e tu adiciona o do hotmail e no 3o acontece o mesmo....ou seja...ele vai mandar 3 emails para o 1o endereço pq ele está na lista nos 3 loops....pra resolver isso tu deve limpa a lista de recipientes...tenta usa esse código aki...

 

on error resume nextemail = "marcia_jordana@bol.com.br, marciajordana@hotmail.com, marcia_jordana@ig.com.br"VetMail = Split(email, ", ")'deixa esses comandos fora do loop pq como eles são iguais nos 3 email não precisa executar 3 vezes...e otra...c tu fosse ver a lista de emails para responder iriam ter 3 vezes o email marcia@equipaindustria.com.br pq 3 vezes tu iria adicionar ele,hehe  Mail.From = "marcia@equipaindustria.com.br"  Mail.FromName = "Marcia"  Mail.AddReplyTo "marcia@equipaindustria.com.br"  Mail.Subject = "Teste de envio de email 10"  Mail.Body = "Teste da body"For i = LBound(VetEmail) to ubound(VetMail)  Mail.ClearAdress  '(não sei qual o componente q tu ta usando,dai dei um chute de código pra limpa a lista de emails,hehehe)  Mail.AddAddress Trim(VetMail(i))  If Mail.Send Then       Response.write "<br><center>Enviando email para " & Vetmail(i) & "</center><br>"   Else      Response.Write "Erro " & Mail.Response  End IfNext

Compartilhar este post


Link para o post
Compartilhar em outros sites

Salfado? eu???

É safado sim... cadê o dinheiro da pensão dos nossos filhos... Eu vou te denunciar no Ratinho...Rs... é brincadeira... Eu devo ter digitado salfado por erro de digitação .Desculpe.Eu alterei o código, mas o erro continua...

e não zerando e colokando um email...no caso caso no 1º loop tu coloka o mail do bol,no 2º loop o do bol já ta na lista de email e tu adiciona o do hotmail e no 3o acontece o mesmo....ou seja...ele vai mandar 3 emails para o 1o endereço pq ele está na lista nos 3 loops....pra resolver isso tu deve limpa a lista de recipientes...tenta usa esse código aki...

DDiego, Creio que nesse caso... o vetor não é acumulativo, tanto é que na página aparece isso:
Enviando email para marcia@equipaindustria.com.brEnviando email para marciajordana@hotmail.comEnviando email para marcia_jordana@ig.com.br
Pelo que entendi, se funcionasse do jeito que você falou, ele mostraria assim:primeira linha: Enviando email para marcia_jordana@bol.com.brsegunda linha: Enviando email para marcia_jordana@bol.com.br marciajordana@hotmail.comterceira linha: Enviando email para marcia_jordana@bol.com.br marciajordana@hotmail.com marcia_jordana@ig.com.brOu estou errada? :huh: Eu também usei o codigo que você me mandou, mas aconteceu a mesma coisa... estou usando o aspmail...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seguinte Marcia,

Retire a definição do objeto mail anterior e tente utilizar esse Código:

On Error Resume Next

email = "marcia_jordana@bol.com.br, marciajordana@hotmail.com, marcia_jordana@ig.com.br"
VetMail = Split(email, ", ")

For i = LBound(Vetmail) To UBound(VetMail)

 Set mail = Server.CreateObject("SMTPsvg.Mailer")
 
 Mail.From = "marcia@equipaindustria.com.br"
 Mail.FromName = "Marcia"
 Mail.AddAddress Trim(VetMail(i))
 Mail.AddReplyTo "marcia@equipaindustria.com.br"
 Mail.Subject = "Teste de envio de email 10"
 Mail.Body = "Teste da body"

 If Mail.Send Then 
     Response.write "<br><center>Enviando email para " & Vetmail(i) & "</center><br>" 
 Else
     Response.Write "Erro " & Mail.Response
 End If

 Set mail = Nothing

Next

E verifique se seus outros e-mails não estão configurados para enviar resposta ou encaminhar para seu 1º e-mail!

Compartilhar este post


Link para o post
Compartilhar em outros sites

um jeito + facil d v isso....no email q tu recebe 3 cópias....aparece os otros emails tb?ou só o proprio endereço?

aparece o próprio endereço de destino... nos três e-mails...

E verifique se seus outros e-mails não estão configurados para enviar resposta ou encaminhar para seu 1º e-mail!

Eu verifiquei e não estão... tanto é que é sempre o primeiro da lista que recebe 3, mesmo alterando a ordem...Eu não tenho o SMTPsvg.Mailer instalado... o que eu tenho é o Persits ASPEmail...

Compartilhar este post


Link para o post
Compartilhar em outros sites

É que lá em cima você tinha dito Aspmail, é só você setar o ASPEMAIL no lugar do Aspmail!

Compartilhar este post


Link para o post
Compartilhar em outros sites

DEU CERTO !!!!!

 

 

Pessoal... valeu pelas dicas e desculpe as brincadeiras...

 

Vou postar o codigo pra vocês verem como ficou:

 

On Error Resume Nextemail = "marcia_jordana@bol.com.br, marciajordana@hotmail.com, marcia_jordana@ig.com.br"VetMail = Split(email, ", ")For i = LBound(Vetmail) To UBound(VetMail) Set mail = Server.CreateObject("Persits.MailSender") Mail.Host = host Mail.From = "marcia@equipaindustria.com.br" Mail.FromName = "Marcia" Mail.AddAddress Trim(VetMail(i)) Mail.AddReplyTo "marcia@equipaindustria.com.br" Mail.Subject = "Teste de envio de email 22" Mail.Body = "Teste da body" If Mail.Send Then      Response.write "<br><center>Enviando email para " & Vetmail(i) & "</center><br>"  Else     Response.Write "Erro " & Mail.Response End If Set mail = NothingNext
Obrigada...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.