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

envío automatico email

Estas en el tema de envío automatico email en el foro de ASP Clásico en Foros del Web. Hola a todos, he estado mirando por la web y la verdad es que no he conseguido hacer lo que quiero. Tengo un formulario con ...
  #1 (permalink)  
Antiguo 27/07/2009, 06:29
 
Fecha de Ingreso: mayo-2004
Mensajes: 167
Antigüedad: 20 años
Puntos: 0
envío automatico email

Hola a todos,
he estado mirando por la web y la verdad es que no he conseguido hacer lo que quiero.

Tengo un formulario con nombre, apellidos, email... que al rellenar y pulsar en enviar se guardan en una base de datos y te lleva a una página de confirmación donde te muestra diferentes datos: número de pedido, .... Hasta ahí bien.

El caso es que necesito que cuando se pulse en confirmar pedido (de esta página de confirmación) automaticamente le envíe un email (reconociendo el email que ha introducido en el formulario) con estos mismos datos (número de pedido...) y no sé como hacerlo.

Espero que podáis decirme algo. Gracias,

Itxaso
  #2 (permalink)  
Antiguo 27/07/2009, 07:21
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: envío automatico email

Hola

Lo primero sería comprobar que componentes admite tu servidor. Después de eso .....
Una puntualización, si estructuras así el pedido, te podrás encontrar con un montón de entradas en tu bd que no han sido confirmadas. Deberías hacer la inserción una vez confirmado el pedido, al igual que pretendes hacer con el correo. Es solo una idea

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 27/07/2009, 08:11
 
Fecha de Ingreso: mayo-2004
Mensajes: 167
Antigüedad: 20 años
Puntos: 0
Respuesta: envío automatico email

Hola Adler,
parece que el servidor soporta aspmail pero no sé ni como empezar a hacer lo que quiero ya que yo me pierdo bastante en esto y lo que he conseguido ha sido a base de mirar foros...
  #4 (permalink)  
Antiguo 27/07/2009, 15:09
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: envío automatico email

Hola

Si ya sabes que componente es soportado por servidor, aspemail, descargalo e incrustalo en tu guión

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #5 (permalink)  
Antiguo 31/07/2009, 12:08
Avatar de verinchi  
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires
Mensajes: 647
Antigüedad: 19 años, 7 meses
Puntos: 2
Respuesta: envío automatico email

Amplío la respuesta de Adler porque puede que lo que más complique a itxaso es la lógica de operaciones para lograr lo que quiere...
La idea sería más o menos esta (Incluyendo la mejora de Adler que es lo más lógico para hacer si el pedido debe ser confirmado).

Formulario Pedidos -> Rellena el formulario con los datos -> Cargas todos los valores de las variables del form en campos ocultos en la página de confirmación -> Si Confirma -> Recién ahí va a la página de procesos y hace lo siguiente:

1- Guarda los datos en la db
2- Se inserta el código del aspmail para enviar un correo, tomando la variable que viene del form anterior.
Tené en cuenta que para enviar correo por smtp tenés que usar como cuenta origen (de) una cuenta registrada en el dominio de la página que manda el correo, el mail de destino puede ser cualquiera.

Si tenés dudas acerca del uso de aspmail buscá en este foro que hay varias explicaciones.

Saludos y espero que te sirva.
__________________
Why can't we not be sober?
www.partitorium.com.ar
  #6 (permalink)  
Antiguo 16/08/2009, 14:42
 
Fecha de Ingreso: mayo-2004
Mensajes: 167
Antigüedad: 20 años
Puntos: 0
Respuesta: envío automatico email

Perdon por no haber respondido antes pero he estado de vacaciones y acabo de volver. Muchas gracias por vuestra ayuda, intentaré seguir vuestras indicaciones y espero que funcione. Con lo que sea os digo.

Un saludo,

Itxaso
  #7 (permalink)  
Antiguo 28/08/2009, 09:05
 
Fecha de Ingreso: mayo-2004
Mensajes: 167
Antigüedad: 20 años
Puntos: 0
Respuesta: envío automatico email

Hola, que tal?
perdón, se me había olvidado comentar como me había ido todo. La verdad es que ya lo solucioné pero ahora me han pedido unos cambios y tengo el siguiente problema.

Tengo un formulario y cuando se rellenan los datos y le das a enviar vas a otra pagina donde visualizas esos datos. Ahora bien, cuando pulsamos en un botón, estos datos se guardan en una base de datos y al mismo tiempo va a otra pagina donde se confirma que todo ha ido bien. El caso es que todo me funciona perfectamente pero la idea es que cuando llegas a esta 3ª pagina automaticamente te envia un email con los datos introducidos y por mas que lo intento no me funciona. Desde la 2ª pagina va bien pero desde esta ultima no. Uso aspmail.

Sabeis que puede ser? muchas gracias
  #8 (permalink)  
Antiguo 28/08/2009, 10:16
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 3 meses
Puntos: 146
Respuesta: envío automatico email

código? ...

la bola mágica no quiere funcionar hoy día
  #9 (permalink)  
Antiguo 28/08/2009, 10:56
 
Fecha de Ingreso: mayo-2004
Mensajes: 167
Antigüedad: 20 años
Puntos: 0
Respuesta: envío automatico email

formulario.asp

Código:
<form action="confirmacion2.asp" method="post" name="form1">
<table width="381" border="0" align="center" cellpadding="3" cellspacing="3">
<tr>
<td width="128" class="texto">Nombre y apellidos <br>
 o Raz&oacute;n Social* :</td>
<td colspan="2"><label>
 <input name="nombre" type="text" class="field" id="nombre">
</label></td>
</tr>
<tr>
<td class="texto">DNI o NIF * :</td>
<td colspan="2"><input name="dni" type="text" class="dni_field" id="dni"></td>
</tr>
<tr>
<td class="texto">Direccion* :</td>
<td colspan="2"><input name="direccion" type="text" class="field" id="direccion"></td>
</tr>
<tr>
<td class="texto">E-mail* :</td>
<td colspan="2"><input name="email" type="text" class="field" id="email"></td>
</tr>
                                   
<tr>
<td class="texto">&nbsp;</td>
<td width="120"><div align="center">
<input name="borrar" type="reset" class="enviar_borrar" id="borrar" value="Borrar">
</div></td>
<td width="103"><input name="enviar" type="submit" onClick="confirmacion2.asp" class="enviar_borrar" id="enviar"value="Enviar"></td>
</tr>
</table>
                             
<input name="id" type="hidden" id="id" value="<%=(Rspedidos.Fields.Item("id").Value)%>">
</form>

confirmacion.asp


Código:
<form ACTION="<%=MM_editAction%>" METHOD="POST" name="form2" id="form2">
<table width="500" height="25"border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="158" height="25"><span class="Estilo6"><span class="txtconfirmacion">confirmar</span>
                               
                               
<input name="nombre" type="hidden" id="nombre" value="<%=Request.Form("nombre")%>">
<input name="dni" type="hidden" id="dni" value="<%=Request.Form("dni")%>">
<input name="direccion" type="hidden" id="direccion" value="<%=Request.Form("direccion")%>">
<input name="email" type="hidden" id="email" value="<%=Request.Form("email")%>">
<input name="id" type="hidden" id="id" value="<%=Request.Form("id")%>">
 </span></td>
</tr>
</table>
     
                         
<input type="hidden" name="MM_insert" value="form2">
</form>

gracias.asp

<%@LANGUAGE="VBSCRIPT"%>
Código:
<%
nombre = request.form("nombre")
direccion = request.form("direccion")
email = request.form("email")
id = request.form("id")
'creo el objeto correo
set Mail = server.createObject("Persits.MailSender")
'configuro el mensaje
'señalo el servidor de salida para enviar el correo
Mail.host = "smtp.miservidor.com"
'indico la dirección de correo del remitente
Mail.from = "[email protected]"
'indico la dirección del destinatario del mensaje
Mail.FromName = "prueba"
Mail.addAddress Request.Form ("email")
Mail.Username = "xxxxxxx"
Mail.Password = "Abcde" 
'indico el asunto
Mail.Subject = "pedidos"
'indico el cuerpo del mensaje
Mail.IsHTML = True 
Mail.Body =  "<HTML><BODY><p><font face=verdana size=2>Gracias por realizar el pedido. Su número de pedido es el: "&id&"<br><br></p><br>Enviado el "& Now() &"</font></BODY></HTML>" 

'lo envio
'aseguro que no se presenten errores en la página si se producen
On Error Resume Next
Mail.send
'if Err ><0 then
'response.write "Error, no se ha podido completar la operación"
'else
'response.write "Gracias por rellenar el formulario. Se ha enviado correctamente." end if 
%>
y en los campos ocultos de gracias.asp recojo lo anterior:

Código:
<form name="form1" method="post" action="">
<span class="txtconfirmacion">
<input name="id" type="hidden" id="id" value="<%=(Rsconfirmar.Fields.Item("id").Value)%>">
</span>
<input type="hidden" name="nombre" id="nombre">
<input type="hidden" name="dni" id="dni">
<input type="hidden" name="direccion" id="direccion">
<input type="hidden" name="email" id="email">
</form>
  #10 (permalink)  
Antiguo 28/08/2009, 15:00
Avatar de adiazm  
Fecha de Ingreso: julio-2008
Ubicación: Santiago
Mensajes: 51
Antigüedad: 15 años, 9 meses
Puntos: 1
Respuesta: envío automatico email

si quieres llegar a una 3era página .asp, con los datos que se recogen de la primera página, debes rescatar en la segunda página los datos de la primera y luego enviarlas via Response.Redirect a la 3era página.

O sea, explicandote un poco:

1era Página (Formulario.asp):
- Nombre
- Apellido

Submit (Enviar "Formulario.asp" a "confirmacion.asp")

2era Página (Confirmacion.asp):

Recoges los datos de la página Formulario y los muestras por pantalla

- Request.Querystring o Request ("nombre")
- Request.Querystring o Request ("apellido")

haces un response.redirect ("gracias.asp?nombre=XXXX&apellido=CCC&otros_campo s=PPP")


3era Página (gracias.asp)

Recibe esos parámetros mediante proceso get.
para capturarlos, Solo un request.querystring o request solo.

finalmente, los muestras por pantalla o envias un e-mail con esos datos.

has lo que quieras...
__________________
Red de mercadeo Vipze.com
Arma tu red y grupos de negocios.
http://www.vipze.com/adiazm
  #11 (permalink)  
Antiguo 29/08/2009, 02:46
 
Fecha de Ingreso: mayo-2004
Mensajes: 167
Antigüedad: 20 años
Puntos: 0
Respuesta: envío automatico email

muchas gracias adiazm, haré la prueba con lo que me dices y como siempre os cuento.

Un saludo
  #12 (permalink)  
Antiguo 31/08/2009, 03:13
 
Fecha de Ingreso: mayo-2004
Mensajes: 167
Antigüedad: 20 años
Puntos: 0
Respuesta: envío automatico email

Hola de nuevo,
nada de nada, por mas que lo intento no me sale. Consigo recoger todos los datos pero no me envía el email. Para el email del email automatico tengo puesto lo siguiente en gracias.asp:


Código:
<%
nombre = request.form("nombre")
direccion = request.form("direccion")
email = request.form("email")
id = request.form("id")
'creo el objeto correo
set Mail = server.createObject("Persits.MailSender")
'configuro el mensaje
'señalo el servidor de salida para enviar el correo
Mail.host = "smtp.miservidor.com"
'indico la dirección de correo del remitente
Mail.from = "[email protected]"
'indico la dirección del destinatario del mensaje
Mail.FromName = "prueba"
Mail.addAddress Request.Form ("email")
Mail.Username = "xxxxxxx"
Mail.Password = "Abcde" 
'indico el asunto
Mail.Subject = "pedidos"
'indico el cuerpo del mensaje
Mail.IsHTML = True 
Mail.Body =  "<HTML><BODY><p><font face=verdana size=2>Gracias por realizar el pedido. Su número de pedido es el: "&id&"<br><br></p><br>Enviado el "& Now() &"</font></BODY></HTML>" 

'lo envio
'aseguro que no se presenten errores en la página si se producen
On Error Resume Next
Mail.send
'if Err ><0 then
'response.write "Error, no se ha podido completar la operación"
'else
'response.write "Gracias por rellenar el formulario. Se ha enviado correctamente." end if 
%>
En esta misma página tengo unos campos ocultos de así para que me recoja los datos:

Código:
<input name="nombre" type="hidden" id="nombre" value="<%=Request.Form("poblacion")%>">

<input name="direccion" type="hidden" id="direccion" value="<%=Request.Form("poblacion")%>">
Por qué no me funciona? no lo entiendo
  #13 (permalink)  
Antiguo 31/08/2009, 03:18
 
Fecha de Ingreso: mayo-2004
Mensajes: 167
Antigüedad: 20 años
Puntos: 0
Respuesta: envío automatico email

Perdonar, he probado a poner la línea On Error Resume Next así 'On Error Resume Next y me da el siguiente error:

Persits.MailSender.4 error '800a0006'

554 Error: no valid recipients


Pero no tiene sentido porque si pongo esta página en la página confirmación.asp sí me funciona
  #14 (permalink)  
Antiguo 01/09/2009, 04:00
 
Fecha de Ingreso: mayo-2004
Mensajes: 167
Antigüedad: 20 años
Puntos: 0
Respuesta: envío automatico email

Por favor, alguien me puede decir algo más. He comprobado que todos los datos llegan a la pagina final (gracias.asp) pero no me envía el email. No lo entiendo porque si pongo el codigo en la pagina anterior (confirmacion.asp) sí funciona. Qué puede ser?

Gracias de nuevo
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 19:07.