Foros del Web » Programando para Internet » ASP Clásico »

AYUDA. Enviar emails a toda una BD - siempre ERROR.

Estas en el tema de AYUDA. Enviar emails a toda una BD - siempre ERROR. en el foro de ASP Clásico en Foros del Web. Tengo este código con la finalidad de coger el asunto y el body de un formulario y enviarlo masivamente a todos los emails de mi ...
  #1 (permalink)  
Antiguo 22/02/2005, 12:36
 
Fecha de Ingreso: enero-2005
Mensajes: 50
Antigüedad: 19 años, 5 meses
Puntos: 0
AYUDA. Enviar emails a toda una BD - siempre ERROR.

Tengo este código con la finalidad de coger el asunto y el body de un formulario y enviarlo masivamente a todos los emails de mi base de datos, pero la cuestión es que no me va ni a tiros.
Venga echarmen una mano.

sendmail.html
Código:
<HTML>
<BODY BGCOLOR="#FFFFFF">
<center>
<FORM METHOD="POST" ACTION="sendmail.asp">
<TABLE CELLSPACING=0 CELLPADDING=2 BGCOLOR="#E0E0E0">
<TR>
   <TD>&nbsp;</TD>
   <TD>&nbsp;</TD>
</TR>
<TR>
   <TD>Asunto:</TD>
   <TD><INPUT TYPE="TEXT" NAME="Subject" size="68"></TD>
</TR>
<TR>
   <TD>Mensaje:</TD>
   <TD><TEXTAREA NAME="TextBody" rows="8" cols="51"></TEXTAREA></TD>
</TR>
<TR>
   <TD COLSPAN=2>
   <p align="center"><INPUT TYPE="submit" NAME="Send" VALUE="Enviar Email">
</TD>
</TR>
</TABLE>
</FORM>
</BODY>
</HTML>
Sendmail.asp
Código:
 <%
 
   Subject = Request.Form("Subject") 
   TextBody = Request.Form("TextBody")
   
Set oConn = Server.CreateObject ("ADODB.Connection")
oConn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.MapPath("/mdb-database/registros.mdb")
Set RS = Server.CreateObject ("ADODB.RecordSet")
sql = "SELECT * FROM registros"
oRS.Open sql, oConn

do while not oRS.eof

   Set Mail = CreateObject("CDO.Message")
   Mail.From = "[email protected]" ' From address
   Mail.to = trim(oRS("Email"))
   Mail.Subject = Request("Subject")
   Mail.TextBody = Request("TextBody") 
   Mail.Send ' send message
   
oRS.movenext
loop

oConn.Close
Set oConn= Nothing 
%>

Última edición por antoli; 22/02/2005 a las 12:37
  #2 (permalink)  
Antiguo 22/02/2005, 12:54
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Y cual es el error?
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 22/02/2005, 12:58
 
Fecha de Ingreso: enero-2005
Mensajes: 50
Antigüedad: 19 años, 5 meses
Puntos: 0
Directamente siempre devuelve página en blanco, sólo eso, que no es poco.
  #4 (permalink)  
Antiguo 22/02/2005, 13:05
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Aqui veo esta linea...

Set RS = Server.CreateObject ("ADODB.RecordSet")

Despues tratas de trabajar con un oRS, probablemente si en la misma pagina tienes un oRS no te tira el error, pero si identifica que es fin de archivo, por lo cual no entra al loop, verifica esto, es mas imprime la condicion de que sea EOF antes del ciclo

Response.Write oRS.eof

do while not oRS.eof
.
.
.

Por ahi debe andar el problema

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #5 (permalink)  
Antiguo 22/02/2005, 14:51
 
Fecha de Ingreso: enero-2005
Mensajes: 50
Antigüedad: 19 años, 5 meses
Puntos: 0
Totalmente operatico con esa explicación.
Gracias.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:45.