Foros del Web » Programando para Internet » PHP »

Problema al enviar mail en html

Estas en el tema de Problema al enviar mail en html en el foro de PHP en Foros del Web. Hola a todos, Me pasa una cosa un poco rara cuando envío un mail desde php usando la función mail(). Quiero enviar el mail como ...
  #1 (permalink)  
Antiguo 26/05/2002, 07:28
 
Fecha de Ingreso: marzo-2002
Mensajes: 34
Antigüedad: 15 años, 8 meses
Puntos: 0
Problema al enviar mail en html

Hola a todos,
Me pasa una cosa un poco rara cuando envío un mail desde php usando la función mail().
Quiero enviar el mail como si fuese un html y uso la siguiente instrucción en la cabecera

$tipo_mail = "From:$lv_remitente\n";
$tipo_mail .= "Content-type: text/html; charset=iso-8859-1";

// Cuerpo del mensaje

mail($lv_destinatario,$lv_correo_remitente,$cuerpo _mensaje,$tipo_mail);



El problema que tengo es que según a que direcciones de correo envío el mail, el mail se ve de una forma o de otra. El mail es una tabla de html con el fondo de color negro y los datos de color blanco. Por ejemplo, si lo envío a una cuenta de Outlook se ve bien, pero si lo envío a una cuenta de hotmail o de mixmail se ve todo negro (tanto el fondo de la tabla como los datos). Es como si no respetase los colores por algún motivo. Si los datos son de color negro y el fondo blanco, no hay problema, siempre lo saca bien. Alguien sabe porqué me está pasando eso?
Un saludo y gracias.
  #2 (permalink)  
Antiguo 26/05/2002, 12:53
asound
Invitado
 
Mensajes: n/a
Puntos:
Re: Problema al enviar mail en html

el problema es ese al parecer algunos servidores de correo no te permiten la opcion de envio de correos en html o el usuario ha desactivado esta opción es por eso que se ve como nos platicas, saludos

<center>
<iframe marginwidth="0" marginheight="0" scrolling="no" frameborder="0" src="http://www.ansiwebs.com/Poexia/index.html" width=468 height=60></iframe>
</center>
  #3 (permalink)  
Antiguo 26/05/2002, 18:35
Avatar de Webstudio
Colaborador
 
Fecha de Ingreso: noviembre-2001
Ubicación: 127.0.0.1
Mensajes: 3.499
Antigüedad: 16 años, 1 mes
Puntos: 68
Re: Problema al enviar mail en html

Bueno, jamás escuché algo como lo que comenta Asound, pero bueno... allá él.

Probaste separar los Headers del Mail con \r\n en vez de solo \n ?

$tipo_mail = &quot;From:$lv_remitente\r\n&quot;;
$tipo_mail .= &quot;Content-type: text/html; charset=iso-8859-1&quot;;

Tengo entendido que algunos Agents no comprenden bien las cabeceras si no se las separa de esa manera.

Saludos.

<hr><font size=2 face="verdana">- Pablo Daniel Rigazzi (Webstudio)
<font size=1 color="#333333">COORDINADOR PROYECTO REGIONALIZACION ARGENTINA
Visita <a href="http://www.web-studio.com.ar" target="_blank">Web Studio</a> - Tutoriales Photoshop</fo
  #4 (permalink)  
Antiguo 27/05/2002, 03:53
 
Fecha de Ingreso: marzo-2002
Mensajes: 34
Antigüedad: 15 años, 8 meses
Puntos: 0
Re: Problema al enviar mail en html

Hola que tal, he probado lo de poner \r pero parece ser que no era eso. Se me olvidó comentar que también me cambia el tamaño de la letra que utilizo. A nadie le ha pasado algo similar enviando mails en formato html?
Alguien podría decirme si la cabecera que uso es correcta?
Os adjunto el código que creo que es más imoprtante para que le echéis un vistazo.

Y gracias de nuevo.

&lt;?php

// Variables que me llegan de Flash
$lv_nombre = $nombre;
$lv_apellidos = $apellidos;
$lv_telefono = $telefono;
$lv_fax = $fax;
$lv_direccion = $direccion;
$lv_cp = $cp;
$lv_poblacion = $poblacion;
$lv_mensaje = $mensaje;

$tipo_mail = &quot;From:$lv_remitente\r\n&quot;;
$tipo_mail .= &quot;Content-type: text/html; charset=iso-8859-1&quot;;

$cuerpo_mensaje = &quot;&lt;html&gt;&quot;;
$cuerpo_mensaje .= &quot;&lt;head&gt;&quot;;
$cuerpo_mensaje .= &quot;&lt;style&gt;&quot;;
// Defino mis estilos
$cuerpo_mensaje .= &quot;&lt;/style&gt;&quot;;
$cuerpo_mensaje .= &quot;&lt;/head&gt;&quot;;
$cuerpo_mensaje .= &quot;&lt;body bgcolor='333300'&gt;&quot;;
// Tabla html
$cuerpo_mensaje .= &quot;&lt;/body&gt;
$cuerpo_mensaje .= &quot;&lt;/html&gt;&quot;;

// Envío el mail
mail($lv_destinatario,$lv_correo_remitente,$cuerpo _mensaje,$tipo_mail);

?&gt;

Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:22.