Foros del Web » Programando para Internet » Javascript »

ver mail enviado con datos del formulario

Estas en el tema de ver mail enviado con datos del formulario en el foro de Javascript en Foros del Web. hola, el problema que tengo es que tengo un formulario en php que funciona perfectamente puedo ingresar los datos a la bd y todo ok, ...
  #1 (permalink)  
Antiguo 10/01/2012, 20:21
 
Fecha de Ingreso: febrero-2011
Mensajes: 39
Antigüedad: 13 años, 2 meses
Puntos: 0
ver mail enviado con datos del formulario

hola, el problema que tengo es que tengo un formulario en php que funciona perfectamente puedo ingresar los datos a la bd y todo ok, tambien esta pogramado para que con los datos ingresados se envie un mail automaticamente al mail indicado con los datos del formulario con un texto predefinido, mi pregunta es, es posible crear un popup con el mismo contenido del mail que se envia? sea que al momento de presionar el boton enviar automaticamente me salga un popup con los datos ingresado y el mismo contenido del mail que se esta enviado? para esta forma imprimir yo una copia para mi?
  #2 (permalink)  
Antiguo 11/01/2012, 05:51
 
Fecha de Ingreso: diciembre-2011
Mensajes: 11
Antigüedad: 12 años, 4 meses
Puntos: 2
Respuesta: ver mail enviado con datos del formulario

Quieres que el usuario vea el popup al hacer click en enviar?

Si es así, supongo que lo mejor es que crees un div flotante que muestre los datos(despues el diseño lo eliges tu):

Código HTML:
Ver original
  1. <div id="div_flotante" style="[B]display:none[/B]; width:200px; top:50%; left:50%; background-color: white; z-index:50">
  2. </div>

Código Javascript:
Ver original
  1. //Asígnale al botón esta función en el evento onclick
  2. function abrir_div()
  3. {
  4. document.getElementById('div_flotante').innerHTML=/*Los datos que quieres que contenga*/;
  5. document.getElementById('div_flotante').style.display="block";
  6.  
  7. }
  #3 (permalink)  
Antiguo 11/01/2012, 08:05
 
Fecha de Ingreso: febrero-2011
Mensajes: 39
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: ver mail enviado con datos del formulario

hola PMfreelance gracias por responder la verdad es que no consigo que me funcione me podrias ayudar pliss

este es el codigo que estoy utilizando

Código HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>titulo</title>
</head>
<?php
$Nombre=$_POST['Nombre'];
$EMAIL=$_POST['EMAIL'];

if ($Nombre!= "" && $EMAIL!= "")
{
mysql_connect("localhost","root","1234");
mysql_select_db("base");

mysql_query("INSERT INTO tabla(Nombre,EMAIL) 

VALUES('$Nombre','$EMAIL')");
}
?>


<?
$destinatario = $EMAIL;
$asunto = "mensaje de prueba";
$cuerpo = '
<html>
<head>
 <title>Prueba de correo</title>
</head>

mensaje de prueba en formato html
</body>
</html>
';

//para el envío en formato HTML
$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

//dirección del remitente
$headers .= "From: yo <[email protected]>\r\n";

//dirección de respuesta, si queremos que sea distinta que la del remitente
$headers .= "Reply-To: [email protected]\r\n";

//direcciones que recibián copia
$headers .= "Cc: [email protected]\r\n";

mail($destinatario,$asunto,$cuerpo,$headers)
?>

<body>
<form id="form1" name="form1" method="post" action="">
  <p><img src="logo.png" width="232" height="49" /></p>
  <p>registro - Llenar todos los campos de lo contrario los datos no se enviaran correctamente</p>
  <table width="663" border="1">
    <tr>
      <td width="303">Nombre</td>
      <td width="348"><input name="Nombre" type="text" id="Nombre" size="58" /></td>
    </tr>
    <tr>
      <td>E-MAIL</td>
      <td><label for="EMAIL"></label>
      <input name="EMAIL" type="text" id="EMAIL" size="58" /></td>
    </tr>
    <tr>
      <td colspan="2"><p>
        <input type="submit" name="button" id="button" value="Enviar datos del nuevo cliente" />
      </p></td>
    </tr>
  </table>
  <label for="Nombre"></label>
</form>
<p>&nbsp;</p>
</body>
</html> 
Cita:
Iniciado por PMfreelance Ver Mensaje
Quieres que el usuario vea el popup al hacer click en enviar?

Si es así, supongo que lo mejor es que crees un div flotante que muestre los datos(despues el diseño lo eliges tu):

Código HTML:
Ver original
  1. <div id="div_flotante" style="[B]display:none[/B]; width:200px; top:50%; left:50%; background-color: white; z-index:50">
  2. </div>

Código Javascript:
Ver original
  1. //Asígnale al botón esta función en el evento onclick
  2. function abrir_div()
  3. {
  4. document.getElementById('div_flotante').innerHTML=/*Los datos que quieres que contenga*/;
  5.  
  6. document.getElementById('div_flotante').style.display="block";
  7.  
  8. }
  #4 (permalink)  
Antiguo 11/01/2012, 15:45
 
Fecha de Ingreso: diciembre-2011
Mensajes: 11
Antigüedad: 12 años, 4 meses
Puntos: 2
Respuesta: ver mail enviado con datos del formulario

Prueba a cambiar tu código por este y después lee más abajo:

Código HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>titulo</title>
<script type="text/javascript">
function mostrar_popup()
{
	if(document.form1.Nombre.value!=0 && document.form1.EMAIL.value!=0)
	{
		var pagina = "popup_mail.php?nombre="+document.form1.Nombre.value+"&email="+document.form1.EMAIL.value;
		var opciones="toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=700, height=350, top=125,left=350";
window.open(pagina,"",opciones);
	}
}
</script>
</head>
<?php
$Nombre=$_POST['Nombre'];
$EMAIL=$_POST['EMAIL'];

if ($Nombre!= "" && $EMAIL!= "")
{
mysql_connect("localhost","root","1234");
mysql_select_db("base");

mysql_query("INSERT INTO tabla(Nombre,EMAIL) 

VALUES('$Nombre','$EMAIL')");
}
?>


<?
$destinatario = $EMAIL;
$asunto = "mensaje de prueba";
$cuerpo = '
<html>
<head>
 <title>Prueba de correo</title>
</head>

mensaje de prueba en formato html
</body>
</html>
';

//para el envío en formato HTML
$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

//dirección del remitente
$headers .= "From: yo <[email protected]>\r\n";

//dirección de respuesta, si queremos que sea distinta que la del remitente
$headers .= "Reply-To: [email protected]\r\n";

//direcciones que recibián copia
$headers .= "Cc: [email protected]\r\n";

mail($destinatario,$asunto,$cuerpo,$headers)
?>

<body>
<form id="form1" name="form1" method="post" action="">
  <p><img src="logo.png" width="232" height="49" /></p>
  <p>registro - Llenar todos los campos de lo contrario los datos no se enviaran correctamente</p>
  <table width="663" border="1">
    <tr>
      <td width="303">Nombre</td>
      <td width="348"><input name="Nombre" type="text" id="Nombre" size="58" /></td>
    </tr>
    <tr>
      <td>E-MAIL</td>
      <td><label for="EMAIL"></label>
      <input name="EMAIL" type="text" id="EMAIL" size="58" /></td>
    </tr>
    <tr>
      <td colspan="2"><p>
        <input type="submit" onclick="mostrar_popup()" name="button" id="button" value="Enviar datos del nuevo cliente" />
      </p></td>
    </tr>
  </table>
  <label for="Nombre"></label>
</form>
<p>&nbsp;</p>
</body>
</html> 
Ahora necesitarás crear otro archivo con el siguiente nombre:popup_mail.php y a ese archivo introdúcele únicamente el siguiente código:

Código HTML:
<?php
$Nombre = $_GET['nombre'];
$EMAIL = $_GET['email'];
$cuerpo = "Aquí introduces el texto que se envía en los emails.";

?>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>E-mail enviado</title>
</head>

<body>
<?php
echo "
<b>Nombre:</b> $Nombre
<br />
<b>Email:</b> $EMAIL
<br />
<br />
$cuerpo
";
?>
</body>
</html> 
Prueba si te funciona ahora y me dices. Puedes cambiar los códigos a tu gusto. Un saludo!
  #5 (permalink)  
Antiguo 12/01/2012, 07:07
 
Fecha de Ingreso: febrero-2011
Mensajes: 39
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: ver mail enviado con datos del formulario

PMfreelance muchas gracias por la ayuda prestada, pero lamentablemente no he consegido hacer que ande a la perfeccion ya que cuando hago click al boton del formulario para enviar los datos se me habre la ventana popup pero los valores que se recogen del fomulario no se pasan a la nueva ventana,

veo que estas tratando de pasar los datos por la URL esa parte la hace bien pero no se plasman en el documento.

Cita:
Iniciado por PMfreelance Ver Mensaje
Prueba a cambiar tu código por este y después lee más abajo:

Código HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>titulo</title>
<script type="text/javascript">
function mostrar_popup()
{
	if(document.form1.Nombre.value!=0 && document.form1.EMAIL.value!=0)
	{
		var pagina = "popup_mail.php?nombre="+document.form1.Nombre.value+"&email="+document.form1.EMAIL.value;
		var opciones="toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=700, height=350, top=125,left=350";
window.open(pagina,"",opciones);
	}
}
</script>
</head>
<?php
$Nombre=$_POST['Nombre'];
$EMAIL=$_POST['EMAIL'];

if ($Nombre!= "" && $EMAIL!= "")
{
mysql_connect("localhost","root","1234");
mysql_select_db("base");

mysql_query("INSERT INTO tabla(Nombre,EMAIL) 

VALUES('$Nombre','$EMAIL')");
}
?>


<?
$destinatario = $EMAIL;
$asunto = "mensaje de prueba";
$cuerpo = '
<html>
<head>
 <title>Prueba de correo</title>
</head>

mensaje de prueba en formato html
</body>
</html>
';

//para el envío en formato HTML
$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

//dirección del remitente
$headers .= "From: yo <[email protected]>\r\n";

//dirección de respuesta, si queremos que sea distinta que la del remitente
$headers .= "Reply-To: [email protected]\r\n";

//direcciones que recibián copia
$headers .= "Cc: [email protected]\r\n";

mail($destinatario,$asunto,$cuerpo,$headers)
?>

<body>
<form id="form1" name="form1" method="post" action="">
  <p><img src="logo.png" width="232" height="49" /></p>
  <p>registro - Llenar todos los campos de lo contrario los datos no se enviaran correctamente</p>
  <table width="663" border="1">
    <tr>
      <td width="303">Nombre</td>
      <td width="348"><input name="Nombre" type="text" id="Nombre" size="58" /></td>
    </tr>
    <tr>
      <td>E-MAIL</td>
      <td><label for="EMAIL"></label>
      <input name="EMAIL" type="text" id="EMAIL" size="58" /></td>
    </tr>
    <tr>
      <td colspan="2"><p>
        <input type="submit" onclick="mostrar_popup()" name="button" id="button" value="Enviar datos del nuevo cliente" />
      </p></td>
    </tr>
  </table>
  <label for="Nombre"></label>
</form>
<p>&nbsp;</p>
</body>
</html> 
Ahora necesitarás crear otro archivo con el siguiente nombre:popup_mail.php y a ese archivo introdúcele únicamente el siguiente código:

Código HTML:
<?php
$Nombre = $_GET['nombre'];
$EMAIL = $_GET['email'];
$cuerpo = "Aquí introduces el texto que se envía en los emails.";

?>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>E-mail enviado</title>
</head>

<body>
<?php
echo "
<b>Nombre:</b> $Nombre
<br />
<b>Email:</b> $EMAIL
<br />
<br />
$cuerpo
";
?>
</body>
</html> 
Prueba si te funciona ahora y me dices. Puedes cambiar los códigos a tu gusto. Un saludo!
  #6 (permalink)  
Antiguo 12/01/2012, 15:29
 
Fecha de Ingreso: diciembre-2011
Mensajes: 11
Antigüedad: 12 años, 4 meses
Puntos: 2
Respuesta: ver mail enviado con datos del formulario

Que raro, a mi me funcionaba a la perfección. Intenta pasarlos por variables de sesión.

Un saludo, PMfreelance
  #7 (permalink)  
Antiguo 16/01/2012, 19:20
 
Fecha de Ingreso: febrero-2011
Mensajes: 39
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: ver mail enviado con datos del formulario

PMfreelance eres grande alfina logre solucionar el problema, era que los campos se enviaban en minuscula y mi formulario esta en mayuscula era solo eso, modifique solo algunas letras y todo quedo perfecto muchas gracias por tu ayuda

Cita:
Iniciado por PMfreelance Ver Mensaje
Que raro, a mi me funcionaba a la perfección. Intenta pasarlos por variables de sesión.

Un saludo, PMfreelance

Etiquetas: formulario
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:21.