2012-08-01 23 views
5

Tengo el siguiente código:PHP mail() y Outlook

$subject = "Test Email"; 
    $from = "[email protected]"; 
    ini_set("sendmail_from", $from); 
$message = "<html><body bgcolor=\"#DCEEFC\"> 
       Hello<br><br> 
       This is a <b>test</b> email. 
       <br><br><hr> 
       <a href=\"\">Click Here</a>  
       <br><br><hr> 
       <br><br> 
       Thank you for your time,<br><br> 
      </body></html>"; 

    $headers = "MIME-Version: 1.0\r\n"; 
    $headers .= "Content-type: text/html\r\n"; 
    $headers .= "From: " . $from . "\r\n"; 
    mail($mail, $subject, $message, $headers); 

Sin embargo, cuando envío el correo electrónico a mí mismo, ver todo el código en Outlook. Si lo envío a alguien más, Ellos ven el HTML. Si lo envío a mi hotmail, ven el HTML.

¿Esto es un problema con mi perspectiva (2007), de ser así, qué es, o puedo hacer algo en el correo electrónico para garantizar que se muestre correctamente?

Por favor ayuda!

+0

Si ve etiquetas HTML en Hotmail y Outlook, entonces hay un problema con su código, si solo ve etiquetas HTML en Outlook, entonces es probable que haya algunas configuraciones de Outlook erróneas. –

+0

¿Tiene alguna idea de cuál? – Chud37

+0

¿Qué configuración o qué está mal con tu código? –

Respuesta

6

he encontrado el problema:

HTML Email not displaying correctly for Godaddy web based mail

Cambiado:

$headers = "MIME-Version: 1.0\r\n"; 
$headers .= "Content-type: text/html\r\n"; 
$headers .= "From: " . $from . "\r\n"; 

a:

$headers = "MIME-Version: 1.0" . PHP_EOL; 
$headers .= "Content-Type: text/html; charset=ISO-8859-1" . PHP_EOL; 
$headers .= "From: Site<$from>" . PHP_EOL; 

Gracias por toda su ayuda chicos! :)

1

suena como que tiene su conjunto de perspectivas para mostrar mensajes en texto plano, sin importar el formato que se envían.

entrar en su Preferencias de Outlook y cambiarlo para ver los mensajes en el formato que llegan a

+0

¿Otros correos electrónicos leen bien en HTML? Parece que no puedo encontrar esa configuración en las preferencias. – Chud37

1

Intente reordenar el encabezado. Recuerdo que tienen el mismo problema hace un tiempo y ha funcionado después de utilizar los siguientes encabezados:

$headers = "From: " .$from. "\r\n"; 
    $headers .= "MIME-Version: 1.0\r\n"; 
    $headers .= "Content-Type: text/html; charset=iso-8859-1\r\n"; 
    $headers .= "Content-Transfer-Encoding: 8bit\r\n"; 

recomendaría aunque utilizar un ready-to-go php mailer class - que hace la vida mucho más fácil.

Cuestiones relacionadas