Ir para conteúdo

POWERED BY:

Arquivado

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

l_nando

[Resolvido] Enviar E-mail

Recommended Posts

Pessoal, desculpa incomodar denovo com este assunto, mas não consegui descobrir uma maneira de como fazer isso.

 

Gostaria de pegar uns end. de e-mail colocados em um textarea e enviá-los 1 a 1 para os destinarários, por ex.:

 

nome1@dominio.com.br

nome2@dominio.com.br

nome3@dominio.com.br

nome4@dominio.com.br

nome5@dominio.com.br

 

Já resolvemos em outro post de como enviar por arquivo txt, mas gostaria de fazer assim também para ver de qual forma fica mais rápido e fácil.

 

Valeu

 

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

como ele será digitado, tudo junto, separado por vírgula, espaço em branco, como ???

 

depois é só recuperar os dados atraves do request.form("nome do textarea") e dar um Split ( )

que ele devolve um array com um numero especificado de substrings.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Será digitado desta forma:

 

 

nome1@dominio.com.br

nome2@dominio.com.br

nome3@dominio.com.br

nome4@dominio.com.br

nome5@dominio.com.br

 

Com (enter).

 

Valeu!

Compartilhar este post


Link para o post
Compartilhar em outros sites

use o

Split(email,chr(13))

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então Xan, fiz o que você falou, mas está pegando só o primeiro e-mail.

 

mail = split(request.Form("txtmail"), chr(13))
	
response.Write mail(0)

Lembro que na outra ocasião, mandamos ler linha por linha, mas era um arquivo txt e depois demos um loop.

 

Acho que temos que fazer o mesmo com esse agora, mas como faço para ler linha por linha do textarea e depois dar um loop?

 

Você pode dar um ex.?

 

Valeu!

Compartilhar este post


Link para o post
Compartilhar em outros sites

for each item in request.form

if item = "txtmail" then

mail = split(item, chr(13))

response.write item

end if

next

Compartilhar este post


Link para o post
Compartilhar em outros sites

você isa colocá-lo em um laço de repetição, como o Jow Xavier disse acima...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom galera, infelizmente não está dando certo.

 

Do jeito que o Jow Xavier mencionou, o response.write aparece txtmail, então fiz as modificações desta forma:

 

1ª)

 

for each item in request.form("txtmail")
  if item = request.form("txtmail") then
    mail = split(item, chr(13))
    response.write item
  end if
next
o response.write printa assim:

 

nome1@dominio.com.br nome2@dominio.com.br nome3@dominio.com.br e não envia e-mail.

 

2ª)

 

for each item in request.form("txtmail")
  if item = request.form("txtmail") then
    mail = split(item, chr(13))
    response.write mail(0)
  end if
next

O response printa nome1@dominio.com.br e envia somente este e-mail.

 

Vlw.

Compartilhar este post


Link para o post
Compartilhar em outros sites

no lugar do chr(13), mude para espaço Chr(32) é o código do espaço em branco na tabela ASCII

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nada, mesma coisa!

 

Agora na 1ª e 2ª formas printa:

 

nome1@dominio.com.br nome2@dominio.com.br nome3@dominio.com.br e não envia e-mail.

 

Vlw.

Compartilhar este post


Link para o post
Compartilhar em outros sites

for each item in request.form("txtmail")
  if item = request.form("txtmail") then
    mail = split(item, chr(32))
    response.write mail(0)
  end if
next

mas o usuario, apos escrever cada email terá que dar um espaço em branco....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tá na mão brother só adaptar ... Colocar o script de email no lugar do response.write, e no value do <textarea> os emails.

 

<%
if request.form("enviado") = 1 then
	mail = split(request.form("txtmail"),chr(13))
	for i= 1 to ubound(mail)
		response.write i&"<br>"
	next
else
%>
	<form method="post">
		<textarea name="txtmail">
		1 
		2
		3
		4
		</textarea>
		<br>
		<input type="hidden" value="1" name="enviado">
		<input type="submit" value="Enviar">
	</form>
<% end if %>

Compartilhar este post


Link para o post
Compartilhar em outros sites

for each item in request.form("txtmail")
  if item = request.form("txtmail") then
    mail = split(item, chr(32))
    response.write mail(0)
  end if
next

mas o usuario, apos escrever cada email terá que dar um espaço em branco....

 

Então.

 

Eu já havia colocado desta maneira, troquei o chr(13) por (32) como você tinha dito e agora mesmo colocando um espaço em branco, só foi enviado para o 1º e-mail.

 

Vlw.

 

Tá na mão brother só adaptar ... Colocar o script de email no lugar do response.write, e no value do <textarea> os emails.

 

<%
if request.form("enviado") = 1 then
	mail = split(request.form("txtmail"),chr(13))
	for i= 1 to ubound(mail)
		response.write i&"<br>"
	next
else
%>
	<form method="post">
		<textarea name="txtmail">
		1 
		2
		3
		4
		</textarea>
		<br>
		<input type="hidden" value="1" name="enviado">
		<input type="submit" value="Enviar">
	</form>
<% end if %>

Não deu certo, está dando o seguinte erro:

 

Tipo de erro:

Persits.MailSender.4 (0x800A0006)

501 5.1.3 Bad recipient address syntax

/email2l/006.asp, line 26

 

 

Linha 26

 

Mail.Send

Vlw..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ai o erro tá no seu componente de envio de email, o script que eu fiz está funcionando !!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Note uma coisa:

 

501 5.1.3 Bad recipient address syntax

/email2l/006.asp, line 26

 

 

Linha 26

Mail.Send

 

Na verdade, ele diz que a sintaxe do destinatário está errada, e aponta a linha onde o comando é executado, por isso aponta para a linha do Mail.send , mas o erro não está nessa linha.

Verifique os endereços de e-mail ou como esses endereços estão sendo construidos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

você precisa colocar o mail(i) no endereço do seu componente para envio de email...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara o exemplo que eu fiz tem um for, onde a variavel i tem o valor 1 imagine que você tem 5 emails no seu textarea ... o valor de i será um numero, de 1 a 5 correto ? Um valor numérico ñ é um valor de email né ? por isso o erro !!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso mesmo, tem que fazer igual o xanburzum disse ... Abaixo o código ..

 

	mail = split(request.form("txtmail"),chr(13))	
	
	for i= 0 to ubound(mail)
		response.write Mail(i)&"<br>"				
	next

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boas!

 

Na verdade, não precisa colocar o "<br>", mas só tem um peuqeno problema, ele está enviando os e-mail, mas só não envia para o 1º e-mail, envia a partir do 2º em diante.

 

O que será que está errado?

 

vlw!

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique se o array gerado esta com os endereços de email válidos...

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.