Foros del Web » Programando para Internet » PHP »

Problema correo de formulario

Estas en el tema de Problema correo de formulario en el foro de PHP en Foros del Web. Hola buenos días, estoy teniendo problemas con el mail del formulario, TENGO EL FORMULARIO hecho, y los mails llegan perfecto, lo que pasa es que ...
  #1 (permalink)  
Antiguo 21/04/2013, 16:47
 
Fecha de Ingreso: marzo-2013
Mensajes: 32
Antigüedad: 11 años, 1 mes
Puntos: 0
Problema correo de formulario

Hola buenos días, estoy teniendo problemas con el mail del formulario, TENGO EL FORMULARIO hecho, y los mails llegan perfecto, lo que pasa es que no me gusta en la forma que me llegan a hotmail.

Primero que nada, me llegan a la carpeta CORREO NO DESEADO, y no se como hacer para que esto no suceda.

Segundo, me llega con el nombre del servidor y el nombre de la persona me llega de ASUNTO, acá les dejo una imagen:



[URL="http://sia1.subirimagenes.net/img/2013/04/20/130420062733498978.jpg"]http://sia1.subirimagenes.net/img/2013/04/20/130420062733498978.jpg[/URL]


Donde está el código "[email protected]", debería llegar con el NOMBRE que completó el cliente en el formulario, y donde dice Martin Faranda, debería llegar con el ASUNTO que completó el cliente en el formulario.

No se si se entiende, acá les dejo el código PHP de mi formulario:


Código:
<?php 
    if(isset($_POST['boton'])){ 
        if($_POST['nombre'] == ''){ 
            $error1 = '<span class="error">Ingrese su nombre</span>'; 
        }else if($_POST['email'] == '' or !preg_match("/^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$/",$_POST['email'])){ 
            $error2 = '<span class="error">Ingrese un email</span>'; 
        }else if($_POST['asunto'] == ''){ 
            $error3 = '<span class="error">Ingrese un teléfono</span>'; 
        }else if($_POST['mensaje'] == ''){ 
            $error4 = '<span class="error">Ingrese un mensaje</span>'; 
        }else{           
            $dest = "[email protected]"; //Email de destino 
            $nombre = $_POST['nombre']; 
            $email = $_POST['email']; 
            $asunto = $_POST['asunto']; //Asunto 
            $cuerpo = $_POST['mensaje']; //Cuerpo del mensaje 
            //Cabeceras del correo 
            $headers = 'From:' .$nombre. " rn"; //Quien envia? 
            $headers .= "X-Mailer: PHP/" . phpversion() . " rn"; 
            $headers  = 'MIME-Version: 1.0' . "rn"; 
            $headers .= 'Content-type: text/html; charset=iso-8859-1' . "rn"; 
                            
            $mensaje = 'Enviado por:' .$nombre. "rn"; 
            $mensaje .= "E-mail: " . $email . " rn"; 
            $mensaje .= "Asunto: " . $asunto . " rn"; 
            $mensaje .= "Enviado: " . date('d/m/Y', time()) . " rn"; 
            $mensaje .=  " rn";  
            $mensaje .= "Mensaje: " . "rn"; 
              
            if(mail($dest,$nombre,$cuerpo, utf8_decode($mensaje), $headers)){ 
                $result = '<div class="result_ok">Mensaje enviado satisfactoriamente.</div>';    
                // si el envio fue exitoso reseteamos lo que el usuario escribio: 
                $_POST['nombre'] = ''; 
                $_POST['email'] = ''; 
                $_POST['asunto'] = ''; 
                $_POST['mensaje'] = ''; 
            }else{ 
                $result = '<div class="result_fail">Hubo un error al enviar el mensaje.</div>'; 
            } 
        } 
    } 
?>

Bueno, espero que me puedan ayudar y les agradezco el tiempo.


Saludos.
  #2 (permalink)  
Antiguo 21/04/2013, 17:41
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: Problema correo de formulario

Aqui te coloco los headers que debes utilizar para que te pueda llegar correctamente.

Código PHP:
Ver original
  1. $headers  = "MIME-Version: 1.0\r\n";
  2.  $headers .= "From: ".$email_form."\n";
  3.  $headers .= "To: ".$mail_destino."\n";
  4.  $headers .= "Reply-To: ".$email_form."\n";
  5.  $headers .= "Return-Path: ".$email_form."\n";
  6.  $headers .= "X-Priority: 1\n";
  7.  $headers .= "X-Mailer:PHP ".phpversion()."\n";
  8.  $headers .= "Content-Type: text/plain; charset=iso-8859-1";
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #3 (permalink)  
Antiguo 21/04/2013, 18:12
 
Fecha de Ingreso: marzo-2013
Mensajes: 32
Antigüedad: 11 años, 1 mes
Puntos: 0
Respuesta: Problema correo de formulario

Hola ! que tal?

Primero que nada queria agradecerte por responderme.

Recien probe eso que me pasaste y me sigue llegando igual el mail :S me sigue poniendo el nombre del servidor. Que hago?

Etiquetas: correo, formulario, hotmail, mail
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 22:22.