Foros del Web » Programando para Internet » PHP »

Problema contact.php dejo de funcionar

Estas en el tema de Problema contact.php dejo de funcionar en el foro de PHP en Foros del Web. Hola a todos, les comento el problema para no hacerles perder el tiempo. En nuestra web tenemos un sector de contact us con un formulario ...
  #1 (permalink)  
Antiguo 06/10/2013, 17:48
 
Fecha de Ingreso: octubre-2011
Ubicación: CABA
Mensajes: 63
Antigüedad: 12 años, 7 meses
Puntos: 1
Problema contact.php dejo de funcionar

Hola a todos, les comento el problema para no hacerles perder el tiempo.
En nuestra web tenemos un sector de contact us con un formulario el cual envia el mensaje a nuestro email y a su vez le envia un email al mail del cliente que nos quiere contactar, esto funciono todo a la perfeccion hasta que un dia los mensajes dejaron de llegar y creemos que fue cuando en nuestro host, se creo mas de un email. Esta hosteada en Hostgator.

Los mensajes nos llegan asi:
Asunto: Web Message y el mail que lo envia: <> <<>>, el resto en blanco. (La persona que lo envia, no recibe el mail diciendo que le contestaremos.)

Código PHP:
Ver original
  1. <form method="post" onsubmit="return sendContact();" action="sendContact.php">
  2.                         <p>
  3.                             <label for="name" id="lname">Name:</label>
  4.                           <input type="text" class="text" name="name" id="name" onfocus="input_focus('name');" onblur="input_blur('name');" />
  5.                         </p>
  6.                        
  7.                         <p>
  8.                             <label for="email" id="lemail">E-mail:</label>
  9.                           <input type="text" class="text" name="email" id="email" onfocus="input_focus('email');" onblur="input_blur('email');" />
  10.                         </p>
  11.                         <div class="x"></div>
  12.                         <p class="error" id="email-error">Please insert your e-mail.</p>
  13.                        
  14.                         <p>
  15.                             <label for="tel" id="ltel">Phone:</label>
  16.                             <input type="text" class="text" name="tel" id="tel" onFocus="input_focus('tel');" onBlur="input_blur('tel');" />
  17.                         </p>
  18.  
  19.                         <p>
  20.                             <label for="message" id="lmessage">Message:</label>
  21.                        
  22.                           <textarea name="Mensaje" id="message" onfocus="input_focus('message');" onblur="input_blur('message');"></textarea>
  23.                         </p>
  24.                         <div class="x"></div>
  25.                         <p class="error" id="message-error">You forgot to leave a message!</p>
  26.  
  27.                         <p>
  28.                             <label for="captcha" id="lcaptcha"></label>
  29.                           <input type="text" class="text" name="captcha" id="captcha" onfocus="input_focus('captcha');" onblur="input_blur('captcha');" />
  30.                         </p>
  31.                         <div class="x"></div>
  32.                         <p class="error" id="captcha-error">Are you sure about your calculations?</p>
  33.         <script type="text/javascript">
  34.                             generate_captcha('lcaptcha');
  35.                         </script>
  36.                        
  37.                   <div class="x"></div>
  38.                  
  39.                   <input type="submit" class="formsubmit" name="send_contact" value="Send" />
  40.       </form>

Código PHP:
Ver original
  1. //este es el send contact
  2. <?php
  3.  
  4.     $from = $_POST['email'];
  5.     $from_name = $_POST['name'];
  6.     $subject = 'Web message';
  7.     $tel = $_POST['tel'];  
  8.        
  9.     $to = '[email protected]';
  10.     $to2 = $_POST['email'];  
  11.    
  12.     // collect data
  13.     $body2 = "We will contact you as soon as possible. Thank you.";
  14.     $body = "";
  15.     foreach($_POST as $key => $val)
  16.     {
  17.         if($key != 'captcha')
  18.             $body .= ucfirst($key).": ".$val."\r\n";
  19.     }
  20.    
  21.     // construct MIME PLAIN Email headers
  22.     $header = "MIME-Version: 1.0\n";
  23.     $header .= "Content-type: text/plain; charset=utf-8\n";
  24.     $header .= "From: $from_name <$from>\r\nReply-To: $from_name <$from>\r\nReturn-Path: <$from>\r\n";
  25.                
  26.     // send email
  27.     $mail_sent = mail($to, $subject, $body, $header);  
  28.     $mail_sent2 = mail($to2, $subject, $body2, $header);   
  29. ?>

Muchas gracias.
  #2 (permalink)  
Antiguo 06/10/2013, 21:55
Avatar de Lautaro_eb  
Fecha de Ingreso: mayo-2010
Ubicación: Bariloche, Argentina
Mensajes: 284
Antigüedad: 14 años
Puntos: 24
Respuesta: Problema contact.php dejo de funcionar

Talves se provoca un error con los caracteres al no limpiar las cadenas del formulario.

utiliza htmlentities, o alguna funcion para limpiar los textos y evitar intentos de inyesciones o errores.
__________________
Mi emprendimiento: Software BRC
Youtube: Tutoriales de programación y electrónica.

Etiquetas: formulario, funcionar
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 17:40.