Ir para conteúdo

POWERED BY:

Arquivado

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

Espanhol

Newsletter n envia email

Recommended Posts

Olá pessoal! To com um problema num sistema de newsletter. Quando envio o email para os emails cadastrados, ele mostra que foi enviado o conteúdo mas quando vou acessar os emails pra verificar, n chega nada. O código abaixo possui uma linha chamada 'mail.Host = smtp' que quando excluo ela acontece o que foi relatado acima.... e quando deixo ela junto com o código, aí dá erro. E agora? A outra coisa, é que quero que me apresente a quantidade de usuários cadastrados.... no local marquii com "xxx" pois o rs que tinha tava dando erro.

 

Agradeço a ajuda.

 

<!--#include file="restrito.asp"--><!--#include file="conectar.asp"--><% Session.Timeout = 2 %><html><head><title>Boletim Informativo</title><LINK href="../comentarios/style.css" type=text/css rel=stylesheet><body><table width="100%" border="0" cellspacing="0" cellpadding="0">  <tr>	  <td height="30" bgcolor="#F8F8EF"> <div class="notcham">		  <div align="center">Administração do Boletim Informativo</div>		</div></td>  </tr></table><table width="48" height="20" border="0" align="right" cellpadding="0" cellspacing="0">  <tr> 	<td> <div class="branco"><strong><a href="comando.asp?method=abandon" class="texto">Logout</a></strong></div></td>  </tr></table><table width="76" height="20" border="0" align="left" cellpadding="0" cellspacing="0">  <tr> 	<td width="8" bgcolor="#FFFFFF"> 	  <div class="branco"></div></td>	<td width="81"><div align="center"><strong><a href="admin.asp" class="texto"><font color="#FF6600">HOME</font></a></strong></div></td>	<td width="5" bgcolor="#FFFFFF"> </td>  </tr></table><font face="Verdana" size="2"> <%	acao=Request.querystring("acao")	select case acao	case "enviar"	%></font><br><br><form action="admin.asp?acao=enviando" method="post" class="form">  <font size="2" face="Verdana">  <input type="hidden" name="data" value="<%=Date()%>">  </font>  <p align="center"><font size="2" face="Verdana"> <span class="texto">Assunto 	do Boletim:</span><br>	<input name="assunto" type="text" class="form2" size="49">	<br>	<span class="texto">Mensagem:</span><br>	<textarea name="mensagem" cols="80" rows="15" class="form2"></textarea>	<br><br>	<input type="submit" class="form2" value="   Enviar Boletim   "><br><br>	</font> </form><font face="Verdana" size="2"><BR></font><span class="texto2"><strong>Obs: Todos os e-mails são enviados em formato HTML<BR>Para quebra de linha utilize a tag "<br>" </strong></span><font face="Verdana" size="2"> <hr size="1"><% case "enviando" %><%	user = 0   assunto = Request.Form("assunto")   mensagem = Request.form("mensagem")         mensagem = mensagem & "<hr size=1>Para não receber mais o boletim informativo da Rádio AgitaBrasil <a href=http://www.radioagitabrasil.com/boletim/deletar_email.asp?email=>clique aqui:</a>" AbreConexao     Sql = "SELECT email FROM boletim_dados"FechaConexao      	'mensagem = mensagem & "<BR><BR><BR>Para não receber mais este e-mail <em><a href="& site & ">clique aqui</a></em>" AbreConexao   Sql = "SELECT email FROM boletim_dados"   If Len(mensagem) Then      Set rs = Server.CreateObject("ADODB.Recordset")	rs.Open Sql, ConStr, 3, 3   Response.Write "<br><br><br>"   While Not rs.EOF      Set mail = Server.CreateObject("CDONTS.NewMail")   mail.From = email mail.Host = smtp   mail.To = rs("email")   mail.Subject = assunto   mail.BodyFormat = 0   mail.Body = mensagem    mail.Send   Set mail = Nothing   Response.Write "<span class=texto><strong>Email enviado para: " & rs("email") & "</strong></span><br>"   user = user + 1   rs.MoveNext   Wend   Response.Write "<span class=texto2><strong>No total foram enviados " & user & " emails.</strong></span>"   rs.Close   Set rs = Nothing   Sql = "INSERT INTO boletim_enviados (assunto,mensagem,data) "   Sql = Sql & "VALUES('" & Request.Form("assunto") & "','" & mensagem & "','" & Request.Form("data") & "')"   Conexao.Execute(Sql)   Else   Response.Redirect "admin.asp?acao=erro"   End If   FechaConexao %><% case "modificar" %><% AbreConexaoSql = "SELECT * From boletim_dados"Set rs = Conexao.Execute(Sql)while not rs.EOF%><br><br><table width="214" height="29" border="0" cellpadding="0" cellspacing="0">  <tr> 	<td> <input name="email" type="text" class="form2" value="<%=rs("email")%>" size="35"> 	</td>  </tr></table></font><table width="174" border="0" cellspacing="0" cellpadding="0">  <tr> 	<td width="105"><form method="POST" action="deletar.asp">		<input type="hidden" name="id" value="<%=rs("id")%>">		<input name="deletar" type="submit" class="form2" value="Deletar E-mail Casdastrado">	  </form></td>  </tr></table><font face="Verdana" size="2"> <hr size="1"><% rs.MoveNextwendFechaConexao %><% case "todas" %><% AbreConexaoSql = "SELECT * From boletim_enviados ORDER BY data DESC"Set rs = Conexao.Execute(Sql)%> <%if rs.EOF then%>  <span class="texto"><br><br><br>Não há registros de E-mails enviados no sistema.</span>   <%else%>  <%do while NOT rs.EOF%><br><br><span class="texto"><strong>Assunto:</strong> <%=rs("assunto")%><BR></span></font><span class="texto"><strong>Enviada em:</strong></span><span class="texto"> <%=rs("data")%><BR></span></font><span class="texto"><strong>Mensagem:</strong></span><font face="Verdana" size="2"><span class="texto"><BR><%=rs("mensagem")%></span><BR><HR size="1"><table width="174" border="0" cellspacing="0" cellpadding="0">  <tr> 	<td width="105"><form method="POST" action="deletar_msg.asp">		<input type="hidden" name="id" value="<%=rs("id")%>">		<input name="submit" type="submit" class="form2" value="Deletar">	  </form></td>  </tr></table><%rs.MoveNext%><%loop%><%end if%><% FechaConexao %><% case "erro" %></font><span class="notcham">Ocorreu um erro ao tentar efetuar a operação. Tente novamente.</span><font face="Verdana" size="2"><BR><hr size="1"><% case else %><% AbreConexaoSql = "SELECT * FROM boletim_dados"Set rs = Server.CreateObject("ADODB.Recordset")	 rs.Open Sql, ConStr, 3, 3 %><BR><BR><span class="texto">No total <strong>xxx</strong> pessoas cadastradas no Boletim Informativo.<BR><BR><BR><font color="#FF6600">•</font> </span></font><span class="texto"><a href="admin.asp?acao=modificar"><strong>Modificar / Alterar os dados dos cadastrados</strong></a></span><font face="Verdana" size="2"><span class="texto"><BR><font color="#FF6600">•</font> </span></font><span class="texto"><a href="admin.asp?acao=enviar"><strong>Enviar E-Mail</strong></a></span><font face="Verdana" size="2"><span class="texto"><BR><font color="#FF6600">•</font> </span></font><span class="texto"><a href="admin.asp?acao=todas"><strong>Todos os e-mails já enviados</strong></a> </span><font face="Verdana" size="2"> <HR size="1"><% rs.close FechaConexaoend select %></font> </body></html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloque isso para ver o erro

on error resume nextmail.Sendif err.number<>0 thenresponse.write("erro: "&err.number&"-"&err.description)response.endend if

Compartilhar este post


Link para o post
Compartilhar em outros sites

O erro que ta dando é esse.---------------------------------------------------Microsoft VBScript runtime error '800a01b6' Object doesn't support this property or method: 'Host' /boletim/admin.asp, line 82 é justamente onde tem o tal mail.Host = smtp

Compartilhar este post


Link para o post
Compartilhar em outros sites

nessa linha você deve colocar o nome do seu servidor smtp, tipo isso:mail.Host = "smtp.meudominio.com.br"mas verifique junto ao seu servidor o endereço correto pois varia em cada host

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloquei smtp.radioagitabrasil.com e aí deu o erro:

 

Microsoft VBScript runtime error '800a01a8'

 

Object required: ''

 

/boletim/admin.asp, line 82

--------------------------------------

 

Tive uma idéia aqui J. Tenho um tipo de newsletter aqui bem simples que só envia email em formato de texto e não em html (como eu quero). Se a gente puder fazer uma adaptação do CDONTS desse "fuleira" e jogar na bonitona lá em cima pode dar certo. Dá um sak ai pra você ver. O interessante é que essa "fuleira" não pede danado de smtp nem host... nem nada velho.

 

<%   ' Declaring variables   Dim rs, mail, subject, message, data_source, sql_select, no   no = 0   subject = Request.Form("subject")   message = Request.Form("message")   ' Adding a link to all messages by which users can delete their emails   ' if they want later   	 mensagem = mensagem & vbcrlf & "<BR><BR><BR>Para não receber mais este e-mail <a href=http://www.radioagitabrasil.com/boletim2/del.asp?email=>clique aqui.</a>"      message = message & vbcrlf & vbcrlf & "Para não receber mais esse email por favor clique aqui:"    message = message & vbcrlf & "http://www.radioagitabrasil.com/boletim2/del.asp?email="   sql_select = "select email from users"   data_source = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & _ 						 Server.MapPath("mail.mdb")   ' Check to see if you have not pressed the 'send' button mistakenly   If Len(message) Then   ' If you have written some message then lets send it   ' You can use ASP Email component of your choice, here I will stick with CDO      Set rs = Server.CreateObject("ADODB.Recordset")   rs.Open sql_select, data_source   While Not rs.EOF   Set mail = Server.CreateObject("CDONTS.NewMail")   mail.From = "adm@radioagitabrasil.com"   mail.To = rs("email")   mail.Subject = subject	mail.BodyFormat = 0	mail.Body = message & rs("email")   mail.Send   Set mail = Nothing   Response.Write "E-mail enviado para: " & rs("email") & "<br>"   no = no + 1   rs.MoveNext   Wend   ' When messages have been sent to all the users, exit   Response.Write "E-mails enviados para " & no & " users."   rs.Close   Set rs = Nothing      ' Had you pressed the button mistakenly with text area empty, then   ' redirect back to the HTML Form   Else   Response.Redirect "admin.htm"   End If %>

Compartilhar este post


Link para o post
Compartilhar em outros sites

essa linha define se é html ou textomail.BodyFormat = 0sendo 0 para html e 1 para textovocê só trocaria o nome da variavel para montar seu corpo do email em htmlmas voltando ao codigo inicial, você colocou entre aspas o endereço smtp?mail.Host = "smtp.radioagitabrasil.com"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom antes tava sem as aspas..... mas aí com sua dica eu peguei e coloquei. Continua com o erro:Microsoft VBScript runtime error '800a01b6' Object doesn't support this property or method: 'Host' /boletim/admin.asp, line 82 --------------------------------------------------------N dá pra adaptar com o código que enviei por anexo n cara? Tipo, pegar a parte do cdonts do código de baixo e fazer uma mutação pra colocar na de cima?

Compartilhar este post


Link para o post
Compartilhar em outros sites

xi camarada, foi mal...agora que vi que está usando cdonts..rsrsrsretire essa linha, é pra funcionar

Compartilhar este post


Link para o post
Compartilhar em outros sites

Retirei o host e deu:erro: 424-Object required-------------------------------Se você tiver email cara, me passa q aí posso te mandar ele pra você ver como é a coisa. :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

você adicionou um email na variavel EMAIL?mail.From = emailexemplo:mail.From = "meuemail@servidor.com"Qaul a linha de erro para objeto requerido?

Compartilhar este post


Link para o post
Compartilhar em outros sites

valeu cara pela dica.. Vi que faltava colocar isso também: mail.BodyFormat = 0 mail.MailFormat = 0 TEstei aqui e funcionou lindo...Problema solucionado. Obrigado mesmo!:)

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.