Foros del Web » Programando para Internet » PHP »

Mail enviado por php con formato html

Estas en el tema de Mail enviado por php con formato html en el foro de PHP en Foros del Web. HOLA BUENOS DIAS. TENGO UN FORMULARIO EN HTML QUE ATRAVEZ DEL SIGUIENTE CODIGO PHP ENVIA A UN MAIL LOS DATOS. Código PHP: <?php $nombre  =  ...
  #1 (permalink)  
Antiguo 27/11/2012, 12:41
 
Fecha de Ingreso: octubre-2012
Mensajes: 202
Antigüedad: 11 años, 6 meses
Puntos: 0
Mail enviado por php con formato html

HOLA BUENOS DIAS. TENGO UN FORMULARIO EN HTML QUE ATRAVEZ DEL SIGUIENTE CODIGO PHP ENVIA A UN MAIL LOS DATOS.
Código PHP:
<?php
$nombre 
$_POST['nombre'];
$email $_POST['email'];
$telefono $_POST['telefono'];

$cantidad $_POST['cantidad'];
$cantidad2 $_POST['cantidad2'];
$cantidad3 $_POST['cantidad3'];
$cantidad4 $_POST['cantidad4'];

$codigo $_POST['codigo'];
$codigo2 $_POST['codigo2'];
$codigo3 $_POST['codigo3'];
$codigo4 $_POST['codigo4'];

$articulo $_POST['articulo'];
$articulo2 $_POST['articulo2'];
$articulo3 $_POST['articulo3'];
$articulo4 $_POST['articulo4'];


$header 'From: ' $mail " \r\n";
$header .= "X-Mailer: PHP/" phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";



$mensaje "Este mensaje fue enviado por " $nombre." \r\n";
$mensaje .= "E-mail: " $email " \r\n";
$mensaje .= "Telefono: " $telefono " \r\n";
$mensaje .= "Cantidad: " $cantidad"Codigo: " $codigo"Articulo: " $articulo" \r\n";
$mensaje .= "Cantidad: " $cantidad2"Codigo: " $codigo2"Articulo: " $articulo2" \r\n";
$mensaje .= "Cantidad: " $cantidad3"Codigo: " $codigo3"Articulo: " $articulo3" \r\n";
$mensaje .= "Cantidad: " $cantidad4"Codigo: " $codigo4"Articulo: " $articulo4" \r\n";


$para '[email protected]';
$asunto 'skuld equipamientos srl';

mail($para$asuntoutf8_decode($mensaje), $header);

echo 
'Mensaje enviado correctamente';

?>
LO QUE NECESITO ES QUE CUANDO ME LLEGUE AL MAIL ESTOS DATOS
Código PHP:
$mensaje .= "Cantidad: " $cantidad"Codigo: " $codigo"Articulo: " $articulo" \r\n";
$mensaje .= "Cantidad: " $cantidad2"Codigo: " $codigo2"Articulo: " $articulo2" \r\n";
$mensaje .= "Cantidad: " $cantidad3"Codigo: " $codigo3"Articulo: " $articulo3" \r\n";
$mensaje .= "Cantidad: " $cantidad4"Codigo: " $codigo4"Articulo: " $articulo4" \r\n"
APAREZCAN EN EL MAIL DENTRO DE UNA TABLA CON SUS RESPECTIVAS COLUMNAS. LEI VARIOS TUTORIALES Y VI Q CON COMILLAS SIMPLES SE PUEDE PONER CODIGO HTML DENTRO DEL PHP PERO LA VERDAD NO ME FUNCIONA!
  #2 (permalink)  
Antiguo 27/11/2012, 12:45
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Mail enviado por php con formato html

No entiendo el problema, es sencillo, mira:
Código PHP:
$foo .= '<tag candy="bar">' $does '</tag>'
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 27/11/2012, 12:53
 
Fecha de Ingreso: octubre-2012
Mensajes: 202
Antigüedad: 11 años, 6 meses
Puntos: 0
Cita:
Iniciado por pateketrueke Ver Mensaje
No entiendo el problema, es sencillo, mira:
Código PHP:
$foo .= '<tag candy="bar">' $does '</tag>'
No me funciona no se porque. mira ahi cambie este pedazito de codigo a ver como llega al mail

$mensaje .= <tr>telefono:</tr> . $cantidad. "Codigo: " . $codigo. "Articulo: " . $articulo. " \r\n";


y me llega asi

Este mensaje fue enviado por affa
E-mail: [email protected]
<tr>Telefono: [COLOR="rgb(46, 139, 87)"]</tr>[/COLOR]dadfa
Cantidad: 1Codigo: affaArticulo: affa
Cantidad: 1Codigo: affaArticulo: affa
Cantidad: 1Codigo: affaArticulo: affa
Cantidad: 1Codigo: Articulo:

[QUOTE=jmm87;4319818]No me funciona no se porque. mira ahi cambie este pedazito de codigo a ver como llega al mail

$mensaje .= <tr>telefono:</tr> . $cantidad. "Codigo: " . $codigo. "Articulo: " . $articulo. " \r\n";


y me llega asi

Este mensaje fue enviado por affa
E-mail: [email protected]
<tr>Telefono: </tr>dadfa
Cantidad: 1Codigo: affaArticulo: affa
Cantidad: 1Codigo: affaArticulo: affa
Cantidad: 1Codigo: affaArticulo: affa
Cantidad: 1Codigo: Articulo:

Última edición por GatorV; 27/11/2012 a las 15:44
  #4 (permalink)  
Antiguo 27/11/2012, 12:55
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Mail enviado por php con formato html

Bueno, también debes cambiar el Content-Type de tu correo, ya que debe ser text/html y no text/plain.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 27/11/2012, 13:05
 
Fecha de Ingreso: octubre-2012
Mensajes: 202
Antigüedad: 11 años, 6 meses
Puntos: 0
Cita:
Iniciado por pateketrueke Ver Mensaje
Bueno, también debes cambiar el Content-Type de tu correo, ya que debe ser text/html y no text/plain.
evidentemente algo estoy haciendo mal porque no me funciona.
podrias marcarme como quedaria por ejemplo en este pedazo de texto todo en columnas separadas? o poniendole algun tag de HTML? me harias un favor porque no me funciona

Código HTML:
$mensaje .= <tr>telefono:</tr> . $cantidad. "Codigo: " . $codigo. "Articulo: " . $articulo. " \r\n";
[QUOTE=jmm87;4319827]evidentemente algo estoy haciendo mal porque no me funciona.
perdon en este pedazo de codigo que es como lo tengo en la pagina:

Código PHP:
$mensaje .= "Cantidad: " $cantidad"Codigo: " $codigo"Articulo: " $articulo" \r\n"

Última edición por GatorV; 27/11/2012 a las 15:44
  #6 (permalink)  
Antiguo 27/11/2012, 13:19
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Mail enviado por php con formato html

¿Pero ya cambiaste el Content-Type de esta linea?
Código PHP:
;$header .= "Content-Type: text/plain"
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 27/11/2012, 13:21
 
Fecha de Ingreso: octubre-2012
Mensajes: 202
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Mail enviado por php con formato html

Cita:
Iniciado por pateketrueke Ver Mensaje
¿Pero ya cambiaste el Content-Type de esta linea?
Código PHP:
;$header .= "Content-Type: text/plain"

si

$header = 'From: ' . $mail . " \r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/html";
  #8 (permalink)  
Antiguo 27/11/2012, 13:25
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Mail enviado por php con formato html

Excelente!

Entonces la linea que dices podría ser así:
Código PHP:
 $mensaje .= "<tr><td>Cantidad: " $cantidad"</td><td>Codigo: " $codigo"</td><td>Articulo: " $articulo" </td></tr>\r\n"
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 27/11/2012, 13:35
 
Fecha de Ingreso: octubre-2012
Mensajes: 202
Antigüedad: 11 años, 6 meses
Puntos: 0
Cita:
Iniciado por pateketrueke Ver Mensaje
Excelente!

Entonces la linea que dices podría ser así:
Código PHP:
 $mensaje .= "<tr><td>Cantidad: " $cantidad"</td><td>Codigo: " $codigo"</td><td>Articulo: " $articulo" </td></tr>\r\n"
claro es como yo intente pero el cuerpo del mail llega asi si pongo como vos me decias:


Este mensaje fue enviado por E-mail: Telefono: Cantidad: Codigo: Articulo: Cantidad: Codigo: Articulo: Cantidad: Codigo: Articulo: Cantidad: Codigo: Articulo:

Cita:
Iniciado por jmm87 Ver Mensaje
claro es como yo intente pero el cuerpo del mail llega asi si pongo como vos me decias:


Este mensaje fue enviado por E-mail: Telefono: Cantidad: Codigo: Articulo: Cantidad: Codigo: Articulo: Cantidad: Codigo: Articulo: Cantidad: Codigo: Articulo:
Código PHP:
<?php
$nombre 
$_POST['nombre'];
$email $_POST['email'];
$telefono $_POST['telefono'];

$cantidad $_POST['cantidad'];
$cantidad2 $_POST['cantidad2'];
$cantidad3 $_POST['cantidad3'];
$cantidad4 $_POST['cantidad4'];

$codigo $_POST['codigo'];
$codigo2 $_POST['codigo2'];
$codigo3 $_POST['codigo3'];
$codigo4 $_POST['codigo4'];

$articulo $_POST['articulo'];
$articulo2 $_POST['articulo2'];
$articulo3 $_POST['articulo3'];
$articulo4 $_POST['articulo4'];


$header 'From: ' $mail " \r\n";
$header .= "X-Mailer: PHP/" phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/html";



$mensaje "Este mensaje fue enviado por " $nombre." \r\n";
$mensaje .= "E-mail: " $email " \r\n";
$mensaje .= "Telefono: " $telefono " \r\n";
$mensaje .= "<tr><td>Cantidad: " $cantidad"</td><td>Codigo: " $codigo"</td><td>Articulo: " $articulo" </td></tr>\r\n";   
$mensaje .= "Cantidad: " $cantidad2"Codigo: " $codigo2"Articulo: " $articulo2" \r\n";
$mensaje .= "Cantidad: " $cantidad3"Codigo: " $codigo3"Articulo: " $articulo3" \r\n";
$mensaje .= "Cantidad: " $cantidad4"Codigo: " $codigo4"Articulo: " $articulo4" \r\n";


$para '[email protected]';
$asunto 'skuld equipamientos srl';

mail($para$asuntoutf8_decode($mensaje), $header);

echo 
'Mensaje enviado correctamente';

?>

Última edición por GatorV; 27/11/2012 a las 15:45
  #10 (permalink)  
Antiguo 27/11/2012, 15:46
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Mail enviado por php con formato html

Pues el markup correcto de una tabla es:
Código HTML:
Ver original
  1. <tr>
  2.    <td>adads</td>
  3. </tr>

Por lo que debes de armar una tabla HTML correcta, no solo poner la fila.
  #11 (permalink)  
Antiguo 27/11/2012, 20:11
 
Fecha de Ingreso: octubre-2012
Mensajes: 202
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Mail enviado por php con formato html

Cita:
Iniciado por gatorv Ver Mensaje
pues el markup correcto de una tabla es:
Código html:
Ver original
  1. <tr>
  2.    <td>adads</td>
  3. </tr>

por lo que debes de armar una tabla html correcta, no solo poner la fila.
no puedo creer q el error q estaba cometiendo era ese!! Funciona perfecto ahora! Muchas graciassssssss!!!
  #12 (permalink)  
Antiguo 27/11/2012, 20:14
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Mail enviado por php con formato html

No es un error tal cual, debes aprender HTML ya que es la materia prima de la web, a veces pensamos que los que tienen problemas con PHP deberían saber ya HTML.

Y simplemente no siempre es así.

Hay que estudiar, solo eso.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: enviado, formato, formulario, html, mail, tabla
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 21:39.