Foros del Web » Programando para Internet » PHP »

envio de mail en formato html

Estas en el tema de envio de mail en formato html en el foro de PHP en Foros del Web. buenas! necesito enviar un catalogo de productos via email, el asunto es que este catalogo levanta los productos de la base de datos, y no ...
  #1 (permalink)  
Antiguo 21/02/2009, 17:55
 
Fecha de Ingreso: abril-2008
Mensajes: 435
Antigüedad: 16 años
Puntos: 10
envio de mail en formato html

buenas!
necesito enviar un catalogo de productos via email, el asunto es que este catalogo levanta los productos de la base de datos, y no se como hacer para que el php procese los productos y luego envie el mail

desde muchas gracias
Saludos
  #2 (permalink)  
Antiguo 21/02/2009, 18:44
 
Fecha de Ingreso: febrero-2009
Mensajes: 7
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: envio de mail en formato html

Para enviar un mail en html tenes que especificar el Content-type en el header.

haces la consulta a la base de datos de tus productos, los guardas en variables.

y las concatenas en el mensaje.

$nombre_producto = "informacion que sacaste de la base";

Código PHP:


function enviarMail()
    {
               
           global 
$nombre_producto;

        
$remitente "[email protected]";
        
$header .= 'From: ' $remitente " \r\n";
        
$header .= "X-Mailer: PHP/" phpversion() . " \r\n";
        
$header .= "Mime-Version: 1.0 charset=iso-8859-1\r\n";
        
$header .= "Content-type: text/html \r\n";
        
        
$mensaje "<html>
                    <head>
                    </head>
                    <body>"
;

                
$mensaje "<p>Nombre del producto: " $nombre_producto"</p>";

        
$mensaje .=    "</body>";
        
$mensaje .=    "</html>";    
        
        
$para "[email protected]";
        
$asunto 'Asunto del mail';


        
mail("$para"$asuntoutf8_decode($mensaje), $header);
        
// header("Location: EnvioCorrecto.htm");
    
    

Acordate que aca para poder usar tu variable dentro de la funcion tenes que usar global $nombre_variable, porque las variables estan definidas fuera de la function. O pasarselas por parametro.

Saludos y espero que te sirva

Última edición por rodrigoc; 21/02/2009 a las 18:52
  #3 (permalink)  
Antiguo 22/02/2009, 06:34
 
Fecha de Ingreso: abril-2008
Mensajes: 435
Antigüedad: 16 años
Puntos: 10
Respuesta: envio de mail en formato html

Gracias por la respuesta si me sirvio, pero no puedo hacer que levanten las imagenes, le estoy pasando la url completa del sitio de donde las tiene que sacar pero no las toma.

saludos

pd: Listo tema solucionado, no me cargaba las imagenes porque el hosting tenia una problema y no las envia

muchas gracias
saludos

Última edición por Adell; 22/02/2009 a las 07:18
  #4 (permalink)  
Antiguo 22/02/2009, 15:47
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 18 años
Puntos: 33
Respuesta: envio de mail en formato html

rodrigoc:

Aun cuando tu codigo NO dara error de ningun tipo,
aqui estas SOBREESCRIBIENDO la variable $mensaje
en la parte inicial ->

Cita:
$mensaje = "<p>Nombre del producto: " . $nombre_producto. "</p>";
Es asi ->

Cita:
$mensaje .= "<p>Nombre del producto: " . $nombre_producto. "</p>";
Te hace falta el .(PUNTO) al $mensaje en su segunda parte!!!.

Saludos
Franco
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 17:42.