Foros del Web » Programando para Internet » PHP »

Problemas con el envio de mail con html en los acentos y ñ

Estas en el tema de Problemas con el envio de mail con html en los acentos y ñ en el foro de PHP en Foros del Web. Que tal amigos: Tengo un php el cual envia mail a cierto correo, todo funciona perfecto excepto que tengo problemas con los acentos y la ...
  #1 (permalink)  
Antiguo 26/09/2012, 14:15
 
Fecha de Ingreso: noviembre-2010
Mensajes: 208
Antigüedad: 13 años, 5 meses
Puntos: 3
Problemas con el envio de mail con html en los acentos y ñ

Que tal amigos:

Tengo un php el cual envia mail a cierto correo, todo funciona perfecto excepto que tengo problemas con los acentos y la Ñ, creo que tengo que codificar a utf8 el envio del mail, la pagina que envio en si....funciona ...el problemas es cuando lo envia al mail, y desde el email no funciona bien las ñ y acentos.



codigo

Código PHP:
#!/usr/bin/php -q
<?php
date_default_timezone_set
("America/Santiago");
set_include_path(get_include_path() . PATH_SEPARATOR '/home8/elarted2/php');

include(
'Mail.php');
include(
'Mail/mime.php');
require_once(
"config.php");
//   'MIME-Version' =>'*1.0',
// 'Content-Transfer-Encoding' => '8bit',
// 'Content-type' => 'text/html;*charset=iso-8859-1'
$headers "MIME-Version: 1.1\n";
$headers .= "Content-type: text/html; charset=utf-8\n";

$headers = array(
    
'From'      => '[email protected]',
    
'Return-Path' => '[email protected]',
    
'Subject' => 'NUEVO MENSAJE DE COMr'
    
);
$to '[email protected]';
$month      strftime ("%m"); 
$day        strftime ("%d");
$year       strftime ("%Y");
$dailyperla null;
$preview    false;
 




ob_start();
include 
"Template.html";
$dailyperla ob_get_contents();
ob_end_clean();
// reemplazo por string que paresca valido
$dailyperla str_replace('/[EMAIL]/','/abc123445/'$dailyperla); 
$dailyperla;
unlink("perla.html");
file_put_contents("perlas/perla".$day."-".$month."-".$year.".html"$dailyperla);
symlink("perlas/perla".$day."-".$month."-".$year.".html""perla.html");


$newmime = new Mail_mime();
$newmime->setTXTBody('Perla de Conocimiento');
$newmime->setHTMLBody($dailyperla);

$body  $newmime->get();
$hdrs  $newmime->headers($headers);
$mail  = &Mail::factory('mail');
utf8_decode($mail);
if(
$mail->Send($to$hdrs$body) )
{
    echo 
"***************************";
    echo 
"<br />";
    echo 
"mensaje enviado con exito!";
    echo 
"<br />";
    echo 
"***************************";
}
else
{
     echo 
"fallo envio";
}
    
?>

El mail se envia, el html se ve en correo...pero hay solo unos pequeños dramas con las Ñ y acentos, si me dirigo a Template.html desde el navegador funciona perfecto....espero me puedan ayudar.
  #2 (permalink)  
Antiguo 26/09/2012, 18:18
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años
Puntos: 528
Respuesta: Problemas con el envio de mail con html en los acentos y ñ

Y si vas a enviar el email en utf8 por qué haces utf8_decode($mail);

Además de que eso no hace nada (no cambia nada) debería ser al contrario: $mail=utf8_encode($mail);

Etiquetas: acentos, 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 06:31.