Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Imagen no se muestra al enviar correos con formato HTML usando función mail()

Estas en el tema de Imagen no se muestra al enviar correos con formato HTML usando función mail() en el foro de PHP en Foros del Web. BUenos dias amigos! Estoy tratando de mandar un correo con formato html para que el cliente lo vea bonito. He usado la funcion mail() de ...
  #1 (permalink)  
Antiguo 13/05/2014, 09:47
Avatar de alejo_ferguson  
Fecha de Ingreso: mayo-2014
Mensajes: 33
Antigüedad: 10 años
Puntos: 0
Pregunta Imagen no se muestra al enviar correos con formato HTML usando función mail()

BUenos dias amigos!
Estoy tratando de mandar un correo con formato html para que el cliente lo vea bonito. He usado la funcion mail() de php y me lo manda perfectamente, el problema viene cuando al mostrar el correo recibido no se muestra una imagen que esta en el html que le mando vean la imagen:

http://androidutec.net84.net/correos/correo_formato.html

eso es lo que se manda en el codigo php pero cuando el cliente ve su correo la imagen no se muestra , porque? Por aca les pongo el codigo:

Código PHP:
function correo($correo$usuario$direccion){

    
$correo2 substr($correo1,3);
    
$usuario2 substr($usuario1,2);
    
$direccion2 substr($direccion2,3);
    
$from "[email protected]";
    
$Subject "Bienvenida a HotelFinder";
    
$cabeceras "Content-type:text/html\r\n";
    
//$mensaje = "Hola $usuario ! <br> Te damos la bienvenida a HotelFinder! <br> Para poder activar tu cuenta da click <a href='http://androidutec.net84.net/correos/activa_cuenta.php?user=$usuario&recor=$correo2&ccionre=$direccion2'>aqui</a> <br> Si tienes algun inconveniente tambien puedes copiar y pegar en la barra de direcciones el siguiente link: <br>http://androidutec.net84.net/correos/activa_cuenta.php?recor=$correo2&user=$usuario&ccionre=$direccion2";
    
$mensaje "
    <!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <meta name='viewport' content='width=device-width, initial-scale=1.0'>    
    <link href='http://fonts.googleapis.com/css?family=Architects+Daugther|Roboto|Open+Sans+Condensed:300italic|Shadows+Into+Light&effect=shadow-multiple|3d-float|fire-animation|neon|ice|emboss|3d' rel='stylesheet' type='text/css'>    
    <title></title>
    <style type='text/css'>
        h4{
            font-family: 'Roboto', sans-serif;
            color: #af6607;
            font-size: 39px;
        }
        h5{
            font-family: 'Open Sans Condensed', sans-serif;
        }
        h6{
            font-family: 'Shadows Into Light', cursive;
            font-size: 25px;
            text-align: justify;
            color: #aaaaaa;
        }

        h5{
            font-family: 'Architects Daughter', cursive;
            font-size: 30px;
        }  

        p2{
            font-family: 'Open Sans Condensed', sans-serif;
            font-size: 15px;
            color: #0088cc;
        }

        .bs-example-popover .popover {
        position: relative;
        display: block;
        float: left;
        margin: 20px;
        margin-top: 0px;
        }

        body {
               margin-right: 100px;    
               margin-left: 100px;
               margin-top: 0px;
        }

    </style>
    
</head>
<body>

    <center>

        <h4 class='font-effect-3d-float'>Te damos la Bienvenida a </h4>
        <img src='../img/logo1.png' width='300'>
        <h6>Hola queremos darte la Bienvenida a nuestro sitio de <strong><font color='#0088cc'>Hoteles. </font>
        </strong>Deseamos que <strong><font color='#0088cc'>HotelFinder</font></strong> sea de gran utilidad para tu negocio</h6>

    </center>

</body>
</html>
"
;

    
$headers "From: " $from ;
    
$envio mail($correo$Subject$mensaje$cabeceras);

    if (
$envio == true) {
        
# code...
        
$valor true;
    }else{
        
$valor false;
    }
    return 
$valor;


Última edición por alejo_ferguson; 13/05/2014 a las 10:01 Razón: url no se veia
  #2 (permalink)  
Antiguo 13/05/2014, 10:17
 
Fecha de Ingreso: marzo-2011
Ubicación: Caracas
Mensajes: 389
Antigüedad: 13 años, 2 meses
Puntos: 16
Respuesta: Imagen no se muestra en envio de correos con formato html usando funcion M

Hola amigo.

La imagen no se muestra pues tu le estas poniendo una dirección como si estuviese en el mismo servidor:
"
Código HTML:
Ver original
  1. <img src='../img/logo1.png' width='300'>

Al enviar el correo ya la imagen no se encuentra en el mismo servidor y por tanto no la consigue. debes ponerle una ruta completa, por ejemplo:
"
Código HTML:
Ver original
  1. <img src='http://www.tudominio.com/..../img/logo1.png' width='300'>


Adicionalmente te comento que el css como lo colocas no es leido por todos los manejadores de correo, lo que puede hacer que no se vea igual en todos.

Espero te sirva.
Saludos.
__________________
Lo imposible es lo posible visto por los ojos de un incapaz.
Si te sirve la respuesta. dale + al karma.
Saludos
  #3 (permalink)  
Antiguo 13/05/2014, 10:29
Avatar de alejo_ferguson  
Fecha de Ingreso: mayo-2014
Mensajes: 33
Antigüedad: 10 años
Puntos: 0
Respuesta: Imagen no se muestra en envio de correos con formato html usando funcion M

Hola amigo!
Pues la verdad la imagen si esta en el mismo servidor y pues me diste una idea de como mostrarla, gracias por el aporte dos pares de ojos son mejores que uno! Probe poniendo la direccion de la imagen en el servidor () y fuinciono!
http://androidutec.net84.net/mtto_users/img/logo1.png esa meti en el img src=""

saludos desde El Salvador
  #4 (permalink)  
Antiguo 13/05/2014, 10:33
Avatar de alejo_ferguson  
Fecha de Ingreso: mayo-2014
Mensajes: 33
Antigüedad: 10 años
Puntos: 0
Respuesta: Imagen no se muestra en envio de correos con formato html usando funcion M

Ya marque tu respuesta como valida (creo) Podrías decirme como hacer para que me funcione el css que puse, por favor! ademas he puesto unos link de google fonts y no funcionan porque será? como hago para que el formato de etexto sea el que puse en el head?
asi:
<link href='http://fonts.googleapis.com/css?family=Architects+Daugther|Roboto|Open+Sans+Co ndensed:300italic|Shadows+Into+Light&effect=shadow-multiple|3d-float|fire-animation|neon|ice|emboss|3d' rel='stylesheet' type='text/css'>
y lo definido por el css?
  #5 (permalink)  
Antiguo 13/05/2014, 13:35
 
Fecha de Ingreso: marzo-2011
Ubicación: Caracas
Mensajes: 389
Antigüedad: 13 años, 2 meses
Puntos: 16
Respuesta: Imagen no se muestra al enviar correos con formato HTML usando función mai

No está en el mismo servidor, ya que al enviar el correo el corre pasa a estar en el manejador de correo y no en tu página o sitio web.


Aparte, lo del estilo, creo que toca trabajar a la antigua usando el atributo style en cada selector, esa es la forma de que te tomen (a medias) todos los diseños los distintos navegadores, y sin embargo....
__________________
Lo imposible es lo posible visto por los ojos de un incapaz.
Si te sirve la respuesta. dale + al karma.
Saludos

Etiquetas: html
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 10:28.