Personalizar mensaje que llega a email desde formulario

En una pagina web tengo introducido un formulario, que tras introducir los datos y el mensaje correspondiente, es enviado a un E-mail.
Bien me gustaría saber si puedo configurar de alguna manera el mensaje que llega a mi correo, configurarlo en cuanto a color de letra, tamaño etc.
El código Php que tengo es el siguiente:
<?php
$nombre = $_POST['nombre'];
$mail = $_POST['mail'];
$localidad = $_POST['localidad'];
$header = 'From: ' . $mail . " \r\n";
$header .= "X-Mailer: PHP/" . Phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";
$mensaje = "Este mensaje fue enviado por " . $nombre . ", de " . $localidad . " \r\n";
$mensaje .= "Su e-mail es: " . $mail . "; \r\n";
$mensaje .= "Mensaje: " . $_POST['mensaje'] . " \r\n";
$mensaje .= "Enviado el " . Date('d/m/Y', time());
$para = '[email protected]';
$asunto = 'Contacto desde Midominio';
mail($para, $asunto, utf8_decode($mensaje), $header);
echo '&estatus=ok&';
?>
El correo me llega perfecto con todos los datos introducidos en el formulario pero m gustaría personalizarlo un poco para poder destacar los datos del comunicante.

1 Respuesta

Respuesta

Para personalizar el mail debes poner una estructura html dentro de la primera variable $mensaje.

Hola, muchas gracias por la respuesta, pero sigo teniendo dudas, ¿podrías aclararme un poco mas donde tiene que ir exactamente esa estructura y como la hago?

muchas gracias

<a>http://programacionya.com/distintas-formas-de-enviar-emails-con-php/</a>

Hola y gracias de nuevo, en el enlace que me dejaste explica como hacer lo que ya tengo hecho pero no especifica como personalizar el correo que me llega desde el formulario, con el código que puse aquí me funciona el formulario correctamente solo quiero personalizar el tipo de letra, ,tamaño y color del mensaje que me llega a mi correo, pero no soy capaz de conseguirlo

muchas gracias

Aquí esta la variable que tienes que aplicarle CSS para poder modificar lo que quieres.

$mensaje = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<h1>Probando con html</h1>
<p>esta es una prueba de texto con html</p>
</body>
</html>';

En esta variables debes poner la etiqueta de <style>, así debería quedar y modificar lo que quieras.

$mensaje = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>

<style>

/*AQUÍ VA TODO EL ESTILO*/

/*ejemplo*/

h1{color:red;font-size:40px;background:black;}

p{color:yellow;background:blue;font-size:16px;}

</style>

</head>
<body>
<h1>Probando con html</h1>
<p>esta es una prueba de texto con html</p>
</body>
</html>';

utilizando este código que me has puesto lo que configuro es el mensaje que me sale al rellenar el formulario, al darle enviar me aparece una pantalla con todo esto.

Lo que yo pretendía era que todo el contenido del formulario que es enviado al correo "[email protected]", al yo abrir este correo, todo el contenido del formulario estuviera en un formato y color diferente, supongo que esto no se puede hacer

un saludo y muchas gracias

Obviamente debes agregar las variables que vienen por post desde tu formulario

Debes ponerlo donde sale esto

<body>
<h1>Probando con html</h1>
<p>esta es una prueba de texto con html</p>
</body>

En vez de poner el h1 y el p debes poner todas tus variables.

Y todo esto ¿en que parte del Código que Tengo Yo debo ponerlo?

muchas gracias por tu tiempo de Verdad

Lo que pasa que tu forma de enviar mails no permite modificar la estructura del mensaje, solo envía los datos sueltos, entonces no podrás modificarlos, en el link que te envíe yo sale una forma en la cual puedes modificar y darle estilos CSS para poder ponerle color de fuente tamaño, etc.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas