Foros del Web » Programando para Internet » PHP »

como hacer para enviar mail con html con imagenes

Estas en el tema de como hacer para enviar mail con html con imagenes en el foro de PHP en Foros del Web. Hola!! Mi problema es que tengo un codigo que envia mails con archivos adjuntos y funciona bien, pero cuando adjunto archivos html me muestra la ...
  #1 (permalink)  
Antiguo 16/04/2004, 09:10
 
Fecha de Ingreso: marzo-2004
Mensajes: 5
Antigüedad: 13 años, 8 meses
Puntos: 0
como hacer para enviar mail con html con imagenes

Hola!!
Mi problema es que tengo un codigo que envia mails con archivos adjuntos y funciona bien, pero cuando adjunto archivos html me muestra la página como mensaje, pero no me muestra las imagenes y no se como hacer una especie de paquete que las incluya dentro del archivo o subirlas por separado, no se.
Por otro lado cuando envio mails con imagenes el mail llega con la imagen como archivo adjunto y no se como hacer para que la muestre en el mensaje.

//Estas son la cabeceras que ocupo..
$cabecera = "From: ".$de." <[email protected]>";
$cabecera .= "\n";
$cabecera .= "MIME-version: 1.0\n";
$cabecera .= "Content-type: multipart/mixed; boundary=\"Mi-Separador\"\n";
$cabecera .= "Content-transfer-encoding: 7BIT";

$separador_inicial="--Mi-Separador";
$cabecera_mensaje = "\nContent-type: text/plain; charset=US-ASCII\n";
$cabecera_mensaje .= "Content-transfer-encoding: 7BIT\n\n";

$separador = "\n\n--Mi-Separador\n";
$cabecera_anexo = "Content-type:".$tipo_archivo."; name=\"".$nombre_archivo."\"\n";
$cabecera_anexo .= "Content-Transfer-Encoding: BASE64\n";
$cabecera_anexo .= "Content-disposition: attachment; filename=\"".$nombre_archivo."\"\n\n";

//codigo del cuerpo del mensaje
$cuerpo .="Hola!!".$nombre.":";
$cuerpo .= "\n";
$cuerpo .= $mensaje;
$cuerpo .= "\n";
$cuerpo .=$separador;
$cuerpo .=$cabecera_anexo;
$cuerpo .=$contenido_codificado;
$cuerpo .="\n".$separador_inicial."--\n";
mail('[email protected]',$asunto,$cuerpo,$cabecera) ;
Ojala alguien me pueda ayudar....
Gracias...
  #2 (permalink)  
Antiguo 16/04/2004, 10:11
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Yo usaría PHP mailer para esta taréa. Es una classe que ofrece ya de por sí implementados muchos métodos para enviar e-mails en HTML con imagenes incrustradas, HTML y texto plano simultáneamente y usar hasta servidores SMTP directos con o sin requerimiento de autentificación .. En resumen una mejora sustancial a mail() original de PHP y con la facilidad de su uso.


Si quieres probarla:
http://phpmailer.sourceforge.net

------

Por lo demas .. tu problema radica en que las imagenes si bien se "adjuntan" como un "attach" se codifican usando un "cid" Eso le dá la referencia del archivo que ha de llamar en tu código HTML. para que lo "incruste" desde sus archivos adjuntos directamente ..

No sé si para tu caso concreto y código te servira .. pero prueba:
<img src="cid:archivo_adjunto_imagen.tal">

Por eso te recomiendo ese tipo de classes ya implementadas para esas taréas..

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 16/04/2004, 10:28
 
Fecha de Ingreso: marzo-2004
Mensajes: 5
Antigüedad: 13 años, 8 meses
Puntos: 0
Muchas gracias...
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

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 10:04.