Foros del Web » Programando para Internet » PHP »

Formulario con Recibir copia

Estas en el tema de Formulario con Recibir copia en el foro de PHP en Foros del Web. Hola, por más que busco en el foro de php no encuentro un post donde diga simplemente que código debo introducir para que cuando el ...
  #1 (permalink)  
Antiguo 25/01/2011, 13:42
 
Fecha de Ingreso: enero-2009
Mensajes: 81
Antigüedad: 15 años, 3 meses
Puntos: 1
Formulario con Recibir copia

Hola, por más que busco en el foro de php no encuentro un post donde diga simplemente que código debo introducir para que cuando el checkbox de Recibir copia esté marcado envié copia del mensaje al email del usuario, gracias!

formulario.html

Código HTML:
Ver original
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <title>Formulario</title>
  3. <meta name="description" content="">
  4. <meta name="keywords" content="">
  5. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  6. <meta name="language" content="es">
  7. </head>
  8.  
  9. <div>
  10.         <form method="post" action="formulario.php">
  11.                   <strong>Nombre</strong><br>
  12.                   <input type="text" name="nombre" size="25" maxlength="40" class="campos">
  13.                   <br>
  14.                   <br>
  15.                   <strong>Email</strong><br>
  16.                   <input type="text" name="email" size="25" maxlength="40" class="campos">
  17.                   <br>
  18.                   <br>
  19.                   <strong>Mensaje</strong><br>
  20.                   <textarea name="mensaje" rows="8" cols="24" class="campos"></textarea>
  21.                   <br>
  22.                   <br>
  23.                   <input type="checkbox" name="copia">Recibir copia del mensaje</strong><br><br>       
  24.                   <input name="submit" type="submit" class="boton" value="Enviar">
  25.                   <br>
  26.                   <br>
  27.         </form>
  28. </div>
  29. </body>
  30. </html>


formulario.php

Código PHP:
Ver original
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <head>
  4. <title>Formulario</title>
  5. <meta name="description" content="">
  6. <meta name="keywords" content="">
  7. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  8. <meta name="language" content="es">
  9. </head>
  10.  
  11. <body>
  12. <div>
  13.         <?php
  14.         if(isset($_POST['submit'])) {
  15.  
  16.         $to = "[email protected]";
  17.         $subject = "Grupo de empresas: ".$_POST['nombre'].", ".$_POST['empresa'];
  18.         $nombre = $_POST['nombre'];
  19.         $empresa = $_POST['empresa'];
  20.         $telefono = $_POST['telefono'];
  21.         $email = $_POST['email'];
  22.         $mensaje = $_POST['mensaje'];
  23.         $formato = "Content-type: text/html; charset=iso-8859-1\r\n";
  24.         $formato .= "From: <[email protected]>\r\n";
  25.         $body = "<font face='arial, helvetica, sans-serif' size='2'><p>Se ha solicitado desde la web que se le envíe información a:</p>
  26.                 <table width='700' border='0' align='left'>
  27.                   <tr>
  28.                     <td width='50'><font size='2'><b>Nombre:</b></td>
  29.                     <td width='650'><font size='2'>".$nombre."</td>
  30.                   </tr>
  31.                   <tr>
  32.                     <td><font size='2'><b>E-mail:</b></td>
  33.                     <td><font size='2'>".$email."</td>
  34.                   </tr>
  35.                   <tr>
  36.                     <td valign='top'><font size='2'><b>Mensaje:</b></td>
  37.                     <td><font size='2'>".$mensaje."</td>
  38.                   </tr>
  39.                 </table></font>";
  40.         echo "Gracias por su interés. En breve recibirá una respuesta.";
  41.         mail($to, $subject, $body, $formato);
  42.  
  43.         } else {
  44.  
  45.         echo  "El mensaje no ha sido enviado, por favor inténtelo de nuevo.";
  46.         }
  47.         ?>
  48. </div>
  49. </body>
  50. </html>
  #2 (permalink)  
Antiguo 25/01/2011, 13:52
 
Fecha de Ingreso: octubre-2009
Mensajes: 245
Antigüedad: 14 años, 6 meses
Puntos: 17
Exclamación Respuesta: Formulario con Recibir copia

A esta linea en tu codigo agregale la propiedad value
Código HTML:
Ver original
  1. <input type="checkbox" name="copia" value="on">

y en tu código php solo necesitas hacer una condición:
Código PHP:
Ver original
  1. if(isset($_POST['copia']) && $_POST['copia'] == 'on'){
  2. //llevas acabo las operaciones
  3. }
__________________
Saludos.
  #3 (permalink)  
Antiguo 25/01/2011, 14:07
Avatar de egepe  
Fecha de Ingreso: diciembre-2009
Mensajes: 310
Antigüedad: 14 años, 4 meses
Puntos: 7
Respuesta: Formulario con Recibir copia

En tu script no verificas si $_POST['copia'] fue marcado, debes preguntar para luego si esta en "ON" envies la copia

Saludos
  #4 (permalink)  
Antiguo 25/01/2011, 14:11
 
Fecha de Ingreso: enero-2009
Mensajes: 81
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: Formulario con Recibir copia

Muchas gracias Jaime, pero mi nivel actual no es muy alto por lo que he metido todo el php después de la condición que me has dado, luego he metido .$_POST['email']" en $to y me da error.

Si me pusieras el código php completo te lo agradecería.
  #5 (permalink)  
Antiguo 26/01/2011, 04:19
 
Fecha de Ingreso: enero-2009
Mensajes: 81
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: Formulario con Recibir copia

Todavía no lo he resuelto, alguien me puede echar una mano con el código para incluir el email del remitente? Gracias
  #6 (permalink)  
Antiguo 18/02/2011, 10:06
 
Fecha de Ingreso: enero-2009
Mensajes: 81
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: Formulario con Recibir copia

Al final lo he descubierto en un mensaje del foro, en la línea donde se envía se añade el email del remitente entre comillas:

mail("$to, $email", $subject, $body, $formato);

VIVA YO!!!

Etiquetas: copia, recibir, 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 08:29.