Pregunta

Estoy utilizando una función de correo electrónico para enviar html a una dirección de correo electrónico, pero el nombre y la dirección de correo electrónico no aparecen.Este es mi código:

$name = $_POST['name'];
$mailTo = 'name@email.com';
$subject = 'Message from ' . $_POST['name'];
$message = 
            '<html>
            <head>
            <title>HTML email</title>
            </head>
            <body>
            <p><b>Name:</b> ' . $_POST['name'] . '</p>
            <p><b>Email:</b> ' . $_POST['email'] . '</p>
            <p><b>Message:</b> ' . $_POST['mainmessage'] . '</p>
            </body>
            </html>';

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: Postmaster <some@body.com>';

mail($mailTo, $subject, $message, $headers);

Yo esperaría que el correo electrónico para mostrar como desde el Administrador de correos en la dirección de correo electrónico some@body.com, pero se está mostrando como procedentes de ideapale@box486.bluehost.com, que es mi proveedor de hosting.

Lo que no he configurado correctamente?

¿Fue útil?

Solución

Chris, trate de añadir la \r\n después de la <some@body.com>.He encontrado que php puede ser muy exigente cuando se habla a los servidores de correo.

Editar:sólo para ayudar un poco más, yo tengo esta (casi exactamente lo que usted tiene) en uno de mis trabajo de secuencias de comandos:

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'To: '.$to . "\r\n";
$headers .= 'From: ' .$from. "\r\n";

...donde $from = $fromname.' <'.$fromemail.'>'; y $es tan solo una dirección de correo electrónico.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top