Foros del Web » Programando para Internet » PHP »

Headers html en mail php

Estas en el tema de Headers html en mail php en el foro de PHP en Foros del Web. Hola gente, tengo el siguiente problema. Mi proveedor de servicios cambio por razones de seguridad la forma de enviar los email por php mediante formulario ...
  #1 (permalink)  
Antiguo 19/01/2017, 07:58
 
Fecha de Ingreso: julio-2010
Mensajes: 39
Antigüedad: 9 años, 1 mes
Puntos: 0
Headers html en mail php

Hola gente, tengo el siguiente problema.

Mi proveedor de servicios cambio por razones de seguridad la forma de enviar los email por php mediante formulario de contacto... resulta que me hacen usar el siguiente codigo para enviar emails por php, si no, no llegan:


Código PHP:
<?php
$MailToAddress 
"EMAIL DONDE SE ENVIA EL MENSAJE";
$MailSubject "ASUNTO DE MENSAJE";
 if (! isset(
$MailFromAddress) ) {
 
$MailFromAddress "EMAIL DESDE DONDE SE ENVIA EL MENSAJE";
 }
 
$Header "TITULO DEL EMAIL";
$Message $Footer "";
 
 if (!
is_array($_POST))
 return;
 
reset($_POST);
 while(list(
$key$val) = each($_POST)) {
 
$GLOBALS[$key] = $val;
 
$key ucwords($key); 
 
$val=stripslashes($val);
 
$Message .= "$key = $val\n";
 }
 


 if (
$Header) {
 
$Message $Header."\n\n".$Message."\n\n";
 }
 
 if (
$Footer) {
 
$Message .= "\n\n".$Footer;
 }
 
mail"$MailToAddress""$MailSubject""$Message""From: $MailFromAddress");

echo 
"MENSAJE RESPUESTA";

?>

Mi problema es que no tengo ni idea como agregar los headers para decirle que el email no va a ser texto plano si no html.

¿Alguien tiene idea?

Gracias de antemano... Saludos!
  #2 (permalink)  
Antiguo 19/01/2017, 08:07
Avatar de petit89  
Fecha de Ingreso: marzo-2011
Mensajes: 1.017
Antigüedad: 8 años, 5 meses
Puntos: 149
Respuesta: Headers html en mail php

Seria mas o menos asi....

Código PHP:
Ver original
  1. $MailToAddress = "EMAIL DONDE SE ENVIA EL MENSAJE";
  2. $MailSubject = "ASUNTO DE MENSAJE";
  3.  if (! isset($MailFromAddress) ) {
  4.  $MailFromAddress = "EMAIL DESDE DONDE SE ENVIA EL MENSAJE";
  5.  }
  6.  
  7. $Header = "TITULO DEL EMAIL";
  8. $Message = $Footer = "";
  9.  
  10.  if (!is_array($_POST))
  11.  return;
  12.  reset($_POST);
  13.  while(list($key, $val) = each($_POST)) {
  14.  $GLOBALS[$key] = $val;
  15.  $key = ucwords($key);
  16.  $val=stripslashes($val);
  17.  $Message .= "$key = $val\n";
  18.  }
  19.  
  20.  
  21.  
  22.  if ($Header) {
  23.  $Message = $Header."\n\n".$Message."\n\n";
  24.  }
  25.  
  26.  if ($Footer) {
  27.  $Message .= "\n\n".$Footer;
  28.  }
  29.  
  30. // Para enviar un correo HTML, debe establecerse la cabecera Content-type
  31. $cabeceras  = 'MIME-Version: 1.0' . "\r\n";
  32. $cabeceras .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
  33.  
  34. // Cabeceras adicionales
  35. $cabeceras .= 'To: '.$MailToAddress.'' . "\r\n";
  36. $cabeceras .= 'From: '.$MailFromAddress.'' . "\r\n";
  37.  
  38. mail( $MailToAddress, $MailSubject, $Message, $cabeceras);
  39.  
  40. echo "MENSAJE RESPUESTA";

No dejes de consultar php.net ahi esta todo lo que necesitas...
http://php.net/manual/es/function.mail.php
__________________
█ WebHosting / Reseller a bajo costo | Uptime Garantizado | Soporte en Español e Ingles
¿Te sirvió la respuesta? Deja un +1 (Triangulo negro al lado derecho)
  #3 (permalink)  
Antiguo 19/01/2017, 08:30
Avatar de rbczgz  
Fecha de Ingreso: noviembre-2003
Ubicación: Zaragoza, España
Mensajes: 1.257
Antigüedad: 15 años, 9 meses
Puntos: 154
Respuesta: Headers html en mail php

Hola lukito,

Yo, como siempre, te recomiendo usar PHPMailer, es muy sencillo de configurar y tiene más fiabilidad en la entrega de los mensajes, ya que usas un servidor SMTP.

Espero que te sirva...
  #4 (permalink)  
Antiguo 19/01/2017, 11:30
 
Fecha de Ingreso: julio-2010
Mensajes: 39
Antigüedad: 9 años, 1 mes
Puntos: 0
Respuesta: Headers html en mail php

petit89 gracias por la respuesta, ya habia intentado así y no me funcionaba... voy a volver a probar!

rbczgz, gracias, en caso de no funcionarme mail() me paso a PHPMailer.... saludos!
  #5 (permalink)  
Antiguo 21/01/2017, 05:19
Avatar de manuparquegiralda  
Fecha de Ingreso: junio-2012
Ubicación: Barcelona
Mensajes: 241
Antigüedad: 7 años, 1 mes
Puntos: 39
Respuesta: Headers html en mail php

Cita:
Iniciado por lukito Ver Mensaje
petit89 gracias por la respuesta, ya habia intentado así y no me funcionaba... voy a volver a probar!

rbczgz, gracias, en caso de no funcionarme mail() me paso a PHPMailer.... saludos!
Yo directamente me pasaría a usar la librería PHPMailer, utilizando la función mail de PHP es muy probable que la mayoría de tus mensajes acaben en la carpeta de spam, eso si llegan a esta carpeta, porque si tienes una cuenta con Outllok, lo más probable es que ni siquiera lleguen a la carpeta de spam y sean eliminados por los servidores de Microsoft antes de entregarlos al usuario. Pero allá tú.
__________________
Diseño Web - Arisman Web

Etiquetas: formulario, headers, html, mail
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:13.