Foros del Web » Programando para Internet » PHP »

Enviar mail en formato html con variables Un ayudita por favor

Estas en el tema de Enviar mail en formato html con variables Un ayudita por favor en el foro de PHP en Foros del Web. Hola a todos el tema es que quiero enviar a mis clientes un email en PHP con un formato aceptable hasta aquí bien uso el ...
  #1 (permalink)  
Antiguo 19/11/2006, 03:16
 
Fecha de Ingreso: noviembre-2006
Mensajes: 87
Antigüedad: 17 años, 5 meses
Puntos: 0
Enviar mail en formato html con variables Un ayudita por favor

Hola a todos el tema es que quiero enviar a mis clientes un email en PHP con un formato aceptable hasta aquí bien uso el envío con formato HTML,
mi web trabaja con PAY-PAL y se me envían tras realizar el pago de un artículo las varibles del detalle de la compra por post, yo las recojo en php por ejemplo
$nombre_artículo,$cantidad,...

El problemaes que no se como meterlas en un mail enviado por php pero con formato html, alguién me puede ayudar?

Sé enviar un mail en php con formato HTLM pero no sé meterle las varibles dentro del mensaje.

Muchas grácias de antemano.
  #2 (permalink)  
Antiguo 19/11/2006, 06:39
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Código PHP:
$variable $_POST['usuario'];

$mensaje "Gracias por realizar su pago: ".$variable;
mail(.......$mensaje,....); 
A eso te refieres? Saludos ;)
__________________
Hospedaje Web al mejor costo!
  #3 (permalink)  
Antiguo 20/11/2006, 01:33
 
Fecha de Ingreso: noviembre-2006
Mensajes: 87
Antigüedad: 17 años, 5 meses
Puntos: 0
Gracias Urgido, corrígeme si me equivoco por favor;
esto sirve para un email en php puro (texto plano ¿no?) no se si es posible pero ya que es para recibos de clientes me gustaría mandarlo con php pero con formato html para poder ponerle un logo o algo.
¿Lo ves factible?
Gracias de nuevo,
Salu2!
  #4 (permalink)  
Antiguo 20/11/2006, 01:49
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
claro!! acuerdate que el formato lod efines en tus cabeceras(headers) y ahi es donde puedes poner que el correo es en html y listo lo implementas.

Saludos ;)
__________________
Hospedaje Web al mejor costo!
  #5 (permalink)  
Antiguo 20/11/2006, 03:56
 
Fecha de Ingreso: noviembre-2006
Mensajes: 87
Antigüedad: 17 años, 5 meses
Puntos: 0
Ok! le cambio el formato y le digo que es html y en el
$mensaje le pongo algo del tipo :
$mensaje="<html><head><title>Probando HTML PHP</title></head><body>Ejemplo de envio de email de HTML<br> <u>Manuales</u> para <b>desarrolladores</b> web.</body></html>"

Lo que quiero hacer es emitir en ese mail un recibo para mi cliente(una especie de factura), cómo le pongo las varibles es el mensaje del ejemplo?,
mi idea es hacer una plantilla en html con el logo de la empresa y un par de tablas (hasta aquí sin problemas) copiar ese html en el en la varible $mensaje lo que me falta es como poner cada varible dentro de ese html, en php en formato plano ya lo tengo funcionando pero con html estoy un poco pez.

Muchas gracias por tu paciencia.
Salu2!
  #6 (permalink)  
Antiguo 20/11/2006, 04:34
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Código PHP:
$mensaje="<html><head><title>Probando HTML PHP</title></head><body>".$variable."<br> <u>Manuales</u> para <b>desarrolladores</b> web.</body></html>" 
a eso te haz referido? Saludos :)
__________________
Hospedaje Web al mejor costo!
  #7 (permalink)  
Antiguo 20/11/2006, 04:56
 
Fecha de Ingreso: noviembre-2006
Mensajes: 87
Antigüedad: 17 años, 5 meses
Puntos: 0
Perfecto! Muchas gracias!
Supongo que lo que tengo que hacer si quiero poner el contenido de $variable
en una tabla html en la posición donde ha de ir la varible
'principio html celda tabla' .$varible. 'otro fragmento html finaliza celda'

Muchas gracias de nuevo esta tarde me pongo a ello a ver si lo consigo, no sabía como expresar bien mi pregunta el tema era como concatenar varibles php dentro del htm del mensaje.

Ya te comentaré como ha ido.
Salu2
  #8 (permalink)  
Antiguo 20/11/2006, 04:59
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
suerte y un saludo :)
__________________
Hospedaje Web al mejor costo!
  #9 (permalink)  
Antiguo 22/11/2006, 02:24
 
Fecha de Ingreso: septiembre-2006
Mensajes: 233
Antigüedad: 17 años, 7 meses
Puntos: 0
Hola
Me gustaría saber si se puede incluir código PHP dentro de la variable $mensaje que dice Urgido en su respuesta.
Gracias
  #10 (permalink)  
Antiguo 22/11/2006, 05:45
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
ahm... código php... podrías ser más claro poner un ejemplo?

Saludos
__________________
Hospedaje Web al mejor costo!
  #11 (permalink)  
Antiguo 24/11/2006, 02:16
 
Fecha de Ingreso: septiembre-2006
Mensajes: 233
Antigüedad: 17 años, 7 meses
Puntos: 0
Lo que yo quiero hacer es enviar un e-mail en formato HTML utilizando la funcion mail de Php.
Utilizo un avariable $codigohtml donde inserto el código HTML que quiero que vaya en el email.
Pero intentando mejorarlo, quiero que incluya código Php.
¿cómo puedo hacerlo?
  #12 (permalink)  
Antiguo 29/11/2006, 15:36
 
Fecha de Ingreso: noviembre-2006
Mensajes: 5
Antigüedad: 17 años, 5 meses
Puntos: 0
eso mismo quiero saber si puedo enviar de esa manera una foto que ya esta en el servodir

asi de esta forma

$mensaje="<html><head><title>Probando HTML PHP</title></head><body>".$variable."<br> <u>Manuales</u> para <b>desarrolladores</b> web.<img src:"foto.jpg></body></html>"


Salu2
  #13 (permalink)  
Antiguo 30/11/2006, 02:19
 
Fecha de Ingreso: septiembre-2006
Mensajes: 233
Antigüedad: 17 años, 7 meses
Puntos: 0
¿Alguien controla de este tema?

Gracias
  #14 (permalink)  
Antiguo 30/11/2006, 04:21
 
Fecha de Ingreso: octubre-2006
Mensajes: 20
Antigüedad: 17 años, 6 meses
Puntos: 0
Cita:
Iniciado por tallagol Ver Mensaje
$mensaje="<html><head><title>Probando HTML PHP</title></head><body>".$variable."<br> <u>Manuales</u> para <b>desarrolladores</b> web.<img src:"foto.jpg></body></html>"
Quizá os olvidáis de que las dobles comillas (") actúan como fin de cadena, y si lo que queréis es incluir una dirección o un valor que las necesite, se debe utilizar barra comillas (\") para que el intérprete de php no identifique las comillas como fin de cadena...

Por eso, lo correcto sería:

Cita:
$mensaje="<html><head><title>Probando HTML PHP</title></head><body>".$variable."<br> <u>Manuales</u> para <b>desarrolladores</b> web.<img src:\"foto.jpg\"></body></html>"
Y una cosa más... el código php no podéis mandarlo a ninguna parte por email, puesto que el php sólo será interpretado en el servidor donde esté alojado dicho script.

Ahora, habría que diferenciar dos asuntos distintos:
1.- Enviar una foto por email (como archivo adjunto)
2.- Enviar una ruta a una imagen en vuestro servidor (como html)

Para el primer caso, debéis enviar la imagen (o el archivo) como cadena binaria (función fread) y en este caso será imprescindible indicar en la cabecera que el mail va segmentado y codificado como MIME (Multipart/Mixed).

Para el segundo, sólo debeis mandar la ruta a la imagen como html.


Espero haberlo aclarado un poco.

Saludos,
Flick.
  #15 (permalink)  
Antiguo 30/11/2006, 05:50
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
Cita:
Iniciado por Flick Ver Mensaje
Quizá os olvidáis de que las dobles comillas (") actúan como fin de cadena, y si lo que queréis es incluir una dirección o un valor que las necesite, se debe utilizar barra comillas (\") para que el intérprete de php no identifique las comillas como fin de cadena...

Por eso, lo correcto sería:



Y una cosa más... el código php no podéis mandarlo a ninguna parte por email, puesto que el php sólo será interpretado en el servidor donde esté alojado dicho script.

Ahora, habría que diferenciar dos asuntos distintos:
1.- Enviar una foto por email (como archivo adjunto)
2.- Enviar una ruta a una imagen en vuestro servidor (como html)

Para el primer caso, debéis enviar la imagen (o el archivo) como cadena binaria (función fread) y en este caso será imprescindible indicar en la cabecera que el mail va segmentado y codificado como MIME (Multipart/Mixed).

Para el segundo, sólo debeis mandar la ruta a la imagen como html.


Espero haberlo aclarado un poco.

Saludos,
Flick.
Yo siempre recomiendo el uso de:

PHPMailer
http://phpmailer.sourceforge.net

Sobre todo por qué implementa métodos para crear el e-mail como multiparte con archivos adjuntos .. e incluso con imagenes incrustradas y el soporte para llamarlas desde el HTML del cuerpo del e-mail que componemos (CID: ...)

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 22:25.