Hola.
Vamos a retocar un poco ese código... Lo primero, indiquemos el tipo de contenido que enviamos:
Código PHP:
Ver original$headers = "MIME-Version: 1.0 \r\n";
$headers .= "Content-Type: text/html; charset=utf-8 \r\n";
En este caso, para el recoger el mensaje, mejor que un foreach, recoge directamente los datos y trátalos:
$mensaje = strip_tags($_POST['mensaje']); // mensaje en texto plano
$mensaje_html = preg_replace('/\n/' , '<br />' , $mensaje); // mensaje en html (el que utilizaremos)
Ahora comprobemos si realmente envía el e-mail. En el final del código, reemplaza mail() y header() por lo siguiente:
Código PHP:
Ver originalif( !mail( $destino , $subject , $mensaje , $headers ) ) {
echo 'el mail no se ha enviado';
}
else
{
echo 'e-mail enviado';
}
Y mezclándolo todo te quedaría lo siguiente:
Código PHP:
Ver original/*----------- FIN DE LA CONFIGURACION-----------------*/
$headers = "MIME-Version: 1.0 \r\n";
$headers .= "Content-Type: text/html; charset=utf-8 \r\n";
$headers .= "From: $nombre <$email>\r\n";
$headers .= "Reply-To: $email\r\n";
$headers .= "Return-Path: $nombre <$email>\r\n";
$mensaje = strip_tags($_POST['mensaje']); // mensaje en texto plano $mensaje_html = preg_replace('/\n/' , '<br />' , $mensaje); // mensaje en html (el que utilizaremos en este caso, ya que así lo hemos establecido en Content-Type)
if( !mail( $destino , $subject , $mensaje , $headers ) ) {
echo 'el mail no se ha enviado';
}
else
{
echo 'e-mail enviado';
}
Podría ser que el hosting tenga inhabilitado el envío de e-mails a través de php... Pero ahora ya tienes un código un poco más optimizado. Además, si tu intención es que tus correos lleguen a la bandeja de entrada y no al correo no deseado, deberás utilizar algo un poco más complejo y al mismo tiempo sencillo: la clase
PHPMailer. Así podrás enviar a través de un servidor smtp seguro. Además PHPMailer te da la posibilidad de enviar el correo en html y en texto plano (así utilizaríamos $mensaje y $mensaje_html), para clientes ftp que no soporten html o lo tengan deshabilitado.
También te recomiendo confeccionar un poco los e-mails a enviar en html, a poder ser utilizando tablas para una mayor compatibilidad.