Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/01/2016, 07:44
pablofa
 
Fecha de Ingreso: febrero-2015
Ubicación: Murcia
Mensajes: 29
Antigüedad: 11 años, 7 meses
Puntos: 0
mail php muestra el código html en lugar de interpretarlo

Bueas a tod@s, hasta hace poco utilizaba la función mail() de php para enviar correos, y todo funcionaba bien.

Mi código era

Código PHP:
$correo = $_GET['correo'];
$destinatario = $correo; 
$asunto = $_SESSION['usuario'].' Desde MiWeb.es';
$cuerpo ='Aquí iba el html del cuerpo del mensaje';

$headers = "MIME-Version: 1.0\r\n"; 
$headers .= "Content-type: text/html; charset=utf-8\r\n";
$headers .= "From: MiWeb.es <[email protected]>\r\n";
        
if (
mail("$destinatario", "$asunto", "$cuerpo", "$headers")){
echo 
'Aquí iba el código si todo era correcto';
}
else{
echo 
'Aquí iba el código si algo fallaba';
} 
Todo funcionaba perfectamente, pero desde hace unas semanas, el hosting donde tengo alojada la página web ha dejado de permitir la función mail de php y ahora hay que usar smtp.

Tengo el siguiente código:

Código PHP:
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array (
'host' => $host,
'auth' => true,
'username' => $username,
'password' => $password));

$mail = $smtp->send($to, $headers, $body); 
El correo se envía y llega al destinatario, pero el problema es que en lugar de aparecer el cuerpo del mensaje, se ve el código html; es decir, lo que ve el usuario cuando abre el correo es:
<html>
<head>
<title>...

No sé donde puede estar el problema, agradecería cualquier ayuda que puedan darme, muchas gracias de antemano