Agora segue o codigo que pega as variaveis e faz o envio dos emails:
<!--#include virtual="/conn/connect.asp"-->
<!--#include file="inc/common.asp"-->
<%
Response.Buffer = FALSE
Server.ScriptTimeout = 99999
'******************************************************************
'Pega o Caminho dos dados
'******************************************************************
Set rs = Dados_Gerais("")
lc_empresa = rs("nome")
lc_url = rs("url")
lc_email_empresa = rs("email")
rs.Close
'******************************************************************
lc_id = request("txt_id")
'******************************************************************
Set rs = Registro_Seleciona("tbl_newsletter", "id_news", lc_id)
lc_tipo = rs("tipo")
vc_assunto = "Newsletter (" & lc_empresa & ")"
tx_editor = (trim(rs("texto")))
rs.Close
pagina = int(request("pagina"))
contador = int(request("contador"))
if pagina = 1 then
contador = 0
%>
<script>
parent.formulario.document.getElementById("td_status").innerHTML = '<input type="text" name="it_enviados" class="forms" value="0" size="5"> emails enviados de <input type="text" name="it_total" class="forms" value="0" size="5">'
</script>
<%
end if
'******************************************************************
'Pega os e-mais que estao relacionados ao grupo desta newsletter
'******************************************************************
SQL = "SELECT * FROM tbl_email"
SQL = SQL & " WHERE grupo = "& lc_tipo &""
SQL = SQL & " ORDER BY id"
Set RS = conDB.Execute(SQL)
it_total = RS.RecordCount
RS.PageSize = 10 ' aqui é definido o tamanho do pacote que será enviado
RS.absolutepage = pagina
if pagina = 1 then
%>
<script>
parent.formulario.document.getElementById("it_total").value = <%=it_total%>;
</script>
<%
end if
i = 0
do while NOT RS.EOF AND i < RS.PageSize
set objCDOSYSMail = Server.CreateObject ("CDO.Message")
set objCDOSYSCon = Server.CreateObject ("CDO.Configuration")
Set objCDOSYSMail.Configuration = objCDOSYSCon
With objCDOSYSCon
.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "mail-fwd"
.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 30
.Fields.update
End With
With objCDOSYSMail
.From = lc_email_empresa
.To = rs("email")
.Subject = vc_assunto
.HtmlBody = tx_editor
.Send
End With
set objCDOSYSMail = nothing
set objCDOSYSCon = nothing
%>
<script>
parent.formulario.document.getElementById("it_enviados").value = '<%=i + contador%>';
</script>
<%
i = i + 1
RS.MoveNext
loop
%>
<script>
parent.formulario.document.getElementById("pagina").value = Number(parent.formulario.document.getElementById("pagina").value) + Number(1);
parent.formulario.document.getElementById("contador").value = Number(parent.formulario.document.getElementById("contador").value) + Number(<%=i%>);
</script>
<%
if RS.PageCount >= pagina then
%>
<script>
setTimeout('parent.formulario.document.frm.submit()',10000); // De 10 em 10 segundos ele vai mandar o formulario
</script>
<%
else
'==========================================================================
'Update no Status da Newsletter
'==========================================================================
lc_status = "2"
lc_data = year(now)& "/" & Month(now)& "/" & day(now)
lc_hora = Time()
'==========================================================================
'Altera o status da Newsletter para enviado
SQL1 = "UPDATE tbl_newsletter SET data = '"& lc_data &"' , hora = '" & lc_hora & "' , status = '"& lc_status &"' WHERE id_news = " & lc_id & ""
set rsquery = conDB.Execute(SQL1)
set rsquery = nothing
'==========================================================================
%>
<script>
alert('Mailing enviado com sucesso!');
</script>
<%
end if
%>
Ele não retorna erro algum mas não envia a newsletter.
Pergunta
gustavovalle
Bom dia peguei um codigo e adapitei algumas coisas para o desenvolvimento de um sistema que envia Newsletter sem limite de emails e sem TIMEOUT.
Mas alguma coisa esta errada e não consigo achar o erro.
Abaixo o codigo passo a passo.
Página que chama o envio da nesletter:
Esta página com iframe chama o formulario que enviará a newsletter sem que seje nessessário sair da página atual.
A seguir vem o form que envia as variaveis para o código de envio atraves do botao enviar: Agora segue o codigo que pega as variaveis e faz o envio dos emails:Ele não retorna erro algum mas não envia a newsletter.
Obrigado para quem poder me ajudar.
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.