estou com um problema. Tenho um sistema de boletim que envia as mensagens html para uma lista de emails. Funciona normalmente em um servidor de um cilente, mas quando passo para o do meu site, a coisa desanda. Tudo funciona perfeitamente até o envio. O problema é que na hora que o e-mail chega, ao invés de vir bonitinho, com imagens e tudo mais, ele vem'lisado o código html, ou seja, <table> <tr> <td> blablabla</td> ... e assim vai.
O que pode ser? Alguma variável que deva ser configurada no php.ini? Comparei o php.ini dos dois servidores, e estão exatamente iguais.
Abaixo segue o código da página que envia o email:
<?php
// busca no bd dos registros
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd ">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Newsletter</title>
<link href="../css/estilos.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width="760" border="0" cellspacing="2" cellpadding="2">
<tr>
<td><?php include("menu.php"); ?></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td><strong><font color="#CC0000">Assistente - Passo 5</font></strong> |
<strong>Envio da Newsletter para cadastrados.</strong></td>
</tr>
<tr>
<td height="222"><hr size="1">
<p>Aguarde, essa operação poderá levar alguns minutos dependendo do número de cadastrados.</p>
<?php
//Começa o envio da Newsletter
$x = 1; //varivel para contagem de nmero de e-mails enviados
$hold = 95; // quantidade de emails que devem ser enviados a cada perodo de 6 minutos
//começa o loop para os 7 e-mails
while($linha = mysql_fetch_assoc($rsEmails)) {
$to = $linha['email'];
$subject = $row_rsUltima['titulo'];
$message = $row_rsUltima['conteudo'];
$headers = "MIME-Version: 1.0";
$headers .= "Content-type: text/html; charset=iso-8859-1";
$headers .= "From: Newsletter < newsletter@123.com.br>";
if(mail($to, $subject, $message, $headers)){
echo "Enviado com sucesso para $to<br>";
} else {
echo "Houve um problema no envio para $to<br>";
}
$x++; //Soma 1 ao valor do $x
if($x == $hold) { // Verifica se o $x atingiu o limite de $hold, ou seja, 7 e-mails
sleep(60); // Se atingiu a condicao acima, o servidor segura o envio por 60 segundos
$x = 0; // e aps isso, zera a contagem de $x. Inicia-se a operao novamente at o final da lista.
}
}
?>
<p> </p>
<p> </p>
<hr size="1">
<p> </p> </td>
</tr>
</table>
<p> </p>
</body>
</html>
já tentei inclusive mudar a codificação de ISO pra UTF, mas também sem sucesso.
Pergunta
carlosmandra
Olá colegas,
estou com um problema. Tenho um sistema de boletim que envia as mensagens html para uma lista de emails. Funciona normalmente em um servidor de um cilente, mas quando passo para o do meu site, a coisa desanda. Tudo funciona perfeitamente até o envio. O problema é que na hora que o e-mail chega, ao invés de vir bonitinho, com imagens e tudo mais, ele vem'lisado o código html, ou seja, <table> <tr> <td> blablabla</td> ... e assim vai.
O que pode ser? Alguma variável que deva ser configurada no php.ini? Comparei o php.ini dos dois servidores, e estão exatamente iguais.
Abaixo segue o código da página que envia o email:
já tentei inclusive mudar a codificação de ISO pra UTF, mas também sem sucesso.
Alguma idéia?
Abraço!
Link para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.