Foros del Web » Programando para Internet » PHP »

Alguna solución para este código?

Estas en el tema de Alguna solución para este código? en el foro de PHP en Foros del Web. Hola tengo un formulario de contacto en php pero hay un error en el, y es que no me envia la direccion de correo que ...
  #1 (permalink)  
Antiguo 20/01/2011, 04:07
 
Fecha de Ingreso: abril-2010
Mensajes: 49
Antigüedad: 14 años
Puntos: 2
Alguna solución para este código?

Hola tengo un formulario de contacto en php pero hay un error en el, y es que no me envia la direccion de correo que ha rellenado el usuario en el campo email, me manda el nombre y el mensaje pero no la direccion de correo. Dejo el código a ver si me podeis ayudar, muchad gracias.

Código PHP:
Ver original
  1. if (empty($error)) {
  2. $from = 'From: ' . $name . ' <' . $email . '>';
  3. $subject = "New contact form message";
  4. $content = $name ." has sent you a message: \n" . $message;
  5. $success = "<h3>Thank you! Your message has been sent!</h3>";
  6. mail($to,$subject,$content,$from);
  7. }
  8. }
  9. ?>

Última edición por hamirokuay; 20/01/2011 a las 04:19
  #2 (permalink)  
Antiguo 20/01/2011, 04:25
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 19 años, 10 meses
Puntos: 834
Respuesta: Alguna solución para este código?

Probá agregando un salto de línea al final de la cabecera:
Código PHP:
$from 'From: ' $name ' <' $email '>'.PHP_EOL
  #3 (permalink)  
Antiguo 20/01/2011, 05:13
 
Fecha de Ingreso: abril-2010
Mensajes: 49
Antigüedad: 14 años
Puntos: 2
Respuesta: Alguna solución para este código?

No se ha solucionado
  #4 (permalink)  
Antiguo 20/01/2011, 08:51
 
Fecha de Ingreso: abril-2010
Mensajes: 49
Antigüedad: 14 años
Puntos: 2
Respuesta: Alguna solución para este código?

Dejo el código completo del formulario por si alguien ve el error, os recuerdo que el problema es que solo envia el nombre y el mensaje pero no el correo.

Para mi que habria que incluir el email en la linea 37 porque es precisamente eso lo que me llega, nombre y mensaje solamente. muchas gracias

Código PHP:
Ver original
  1. <!--  desde aqui  -->
  2.         <?php
  3.         if (isset($_POST['submit'])) {
  4.         $error = "";
  5.  
  6.         if (!empty($_POST['name'])) {
  7.         $name = $_POST['name'];
  8.         } else {
  9.         $error .= "No ha escrito su nombre. <br />";
  10.         }
  11.  
  12.         if (!empty($_POST['email'])) {
  13.         $email = $_POST['email'];
  14.           if (!preg_match("/^[a-z0-9]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/i", $email)){
  15.           $error .= "La direccion de e-mail no es correcta. <br/>";
  16.           }
  17.         } else {
  18.         $error .= "No ha escrito una direccion de e-mail. <br />";
  19.         }
  20.  
  21.         if (!empty($_POST['message'])) {
  22.         $message = $_POST['message'];
  23.         } else {
  24.         $error .= "No ha escrito el mensaje. <br />";
  25.         }
  26.  
  27.         if(($_POST['code']) == $_SESSION['code']) {
  28.         $code = $_POST['code'];
  29.         } else {
  30.         $error .= "El codigo Captha introducido no es correcto. Por favor introduzcalo de nuevo.<br />";
  31.         }
  32.  
  33.         if (empty($error)) {
  34.         $from = "From: " . $name . " <" . $email . ">\r\n";
  35.         $to = "[email protected]";
  36.         $subject = "Mensaje desde el formulario de la web";
  37.         $content = $name ." Te ha enviado un mensaje: \n" . $message;
  38.         $success = "<h3>Gracias! Tu mensaje ha sido enviado!</h3>";
  39.         mail($to,$subject,$content,$from);
  40.         }
  41.         }
  42.         ?>
  43.  
  44.         <div id="contactForm">
  45.  
  46.         <h2>Formulario</h2>
  47.  
  48.         <?php
  49.             if (!empty($error)) {
  50.             echo '<p class="error"><strong>Su mensaje no ha sido enviado<br/> Ha ocurrido el siguiente error/errores :</strong><br/>' . $error . '</p>';
  51.             } elseif (!empty($success)) {
  52.             echo $success;
  53.             }
  54.         ?>
  55.             <form action="contacto.php" method="post">
  56.            
  57.                 <label>Nombre:</label>
  58.                 <input type="text" name="name" value="<?php if($_POST['name']) { echo $_POST['name']; } ?>" />
  59.    
  60.                 <label>Email:</label>
  61.                 <input type="text" name="email" value="<?php if($_POST['email']) { echo $_POST['email']; } ?>" />
  62.                
  63.                 <label>Mensaje:</label><br />
  64.                 <textarea name="message" rows="20" cols="20"><?php if($_POST['message']) { echo $_POST['message']; } ?></textarea>
  65.                
  66.                 <label><img src="captcha.php"></label>
  67.                 <input type="text" name="code"> <br />
  68.  
  69.                 <input type="submit" class="submit" name="submit" value="Send message" />
  70.                
  71.             </form>
  72.         </div>
  73. <!--hasta aqui  -->

Etiquetas: Ninguno
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 16:26.