Foros del Web » Programando para Internet » PHP »

incluir imagen emebebida en correo

Estas en el tema de incluir imagen emebebida en correo en el foro de PHP en Foros del Web. Hola a todos! Necesitaria ayuda, estoy incluyendo el cuerpo de mi correo desde un archivo html. El problema es el cliente quiere que las imagenes ...
  #1 (permalink)  
Antiguo 01/07/2008, 07:55
 
Fecha de Ingreso: octubre-2007
Mensajes: 130
Antigüedad: 16 años, 6 meses
Puntos: 2
incluir imagen emebebida en correo

Hola a todos!

Necesitaria ayuda, estoy incluyendo el cuerpo de mi correo desde un archivo html. El problema es el cliente quiere que las imagenes que el prepara en ese archivo esten embebidas al enviarlo.

En mi código php llamo a ese html siendo él el contenido del correo. El problema me viene al incluir las imagenes embebidas, no se hacerlo ya que he usado la clase class.phpmailer.php pero me da el error:

Warning: fsockopen() [function.fsockopen]: unable to connect to smtp.hotpop.com:25

No se si tengo servidor smtp, ni como podría saberlo, o si hay otra manera de incluir imagenes embebidas...
  #2 (permalink)  
Antiguo 01/07/2008, 08:22
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: incluir imagen emebebida en correo

Hola auri501,

PHPMailer tiene un método addHTMLImage para agregar la imagen en el cuerpo del correo, por otro lado ese warning te sale debido a que la clase phpmailer se esta tratando de comunicar con el servidor hotpop pero no puede, revisa que no tengas bloqueado el puerto 25.

Saludos.
  #3 (permalink)  
Antiguo 02/07/2008, 02:32
 
Fecha de Ingreso: octubre-2007
Mensajes: 130
Antigüedad: 16 años, 6 meses
Puntos: 2
Hola GatorV, gracias por tu respuesta. El problema es que no tengo servidor smtp, el que he puesto ha sido uno que he encontrado en un codigo de prueba. No se si me tienen que activar alguna opción en mi dominio para tener este servidor de correo...

Este es el codigo que estoy probando ahora, si me manda el email pero la imagen no aparece, al ver el codigo fuente me aparece en la imagen esto: <IMG SRC='cid:img1'> sin reconocer la imagen que le estoy indicando en el "AddEmbeddedImage", alguien tiene idea de porque puede ser????? Gracias!!!

<?php
require("class.phpmailer.php");
$mail = new PHPMailer();
$mail->Host = "localhost";
$mail->From = "[email protected]";
$mail->FromName = "Nombre del Remitente";
$mail->Subject = "Subject del correo";
$mail->AddAddress("[email protected]","Nombre 01");

$mail->AddEmbeddedImage("cabecera_boletin.jpg", "my-attach", "cabecera_boletin.jpg");
$mail->Body = 'Embedded Image: <img alt="PHPMailer" src="cid:my-attach"> Here is an image!';
$mail->AltBody = "2 Hola amigo\nprobando --- PHPMailer\n\nSaludos";
$mail->AddAttachment("cabecera_boletin.jpg", "cabecera_boletin.jpg");
$mail->AddAttachment("cabecera_boletin.jpg", "demo.zip");

$mail->Send();
?>

Última edición por GatorV; 02/07/2008 a las 08:21
  #4 (permalink)  
Antiguo 02/07/2008, 08:21
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: incluir imagen emebebida en correo

Te falta indicar con $mail->isHTML(true) para que sepa que es un correo HTML.

Saludos.
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 01:03.