Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Élio Laender

Email não reconhece tags HTML

Recommended Posts

Olá pessoal tudo bem? sou iniciante em programação.

Estou criando um projetinho com fins didáticos, e nele implementei um script utilizando a função mail() do php, até o momento havia ocorrido tudo bem. Porém ao tentar enviar email com html, a mensagem está chegando desconfigurada, ou seja, as tags html adicionadas a mensagem não estão sendo reconhecidas no email. Seria erro de sintaxe? pois não consegui encontrar aqui. Obrigado =)

 

Email está chegando da seguinte maneira(uso gmail):

 

<table cellpadding="10" style="background-color: rgb(250,250,250); border: 1px solid #4E69B2; font-family: arial, helvetica, sans-serif; padding: 20px; width: 100%;"><tr> <td><h1></h1><strong style="color: #333333; font-size: 25px;">Olá, Programador</strong></h1><p style="color: #333333; font-size: 20px;">Este é um lembrete mensal. Que tal investir em segurança e trocar suas senhas periodicamente de forma fácil?</p><p style="color: #333333; font-size: 20px;">Segue o link do nosso gerador de senhas online: gmsenhas.esy.es</p><p style="color: #333333; font-size: 20px;">Para cancelar o lembrete mensal, basta acessar o seguinte link: gmsenhas.esy.es</p><p></br><strong style="color: #333333; font-size: 20px;">Agradecemos a utilização. Equipe GM senhas.</strong></p> <center><a href="gmsenhas.esy.es"><img alt="GM-SENHAS" height="150" width="150" src="http://gmsenhas.esy.es/img/icon-gm.png"></a></center></td></tr></table>

    public function envioDiario($conexao) {

        $this->tabela = $this->tabela_listar($conexao, "Cadastro_EnvioEmail");


        #percorre a tabela retornada acessando cada linha por vez, sendo que cada linha será um vetor contendo os atributos da tabela em cada posição. Cada iteração pula uma linha.
        foreach ($this->tabela as $linha) {

            #Caso senha for igual a data atual, será enviado o lembrete.
            if ($linha['Data_Expiracao'] == date('Y-m-d')) {

                $this->assunto = "Lembrete GM-Senhas";
                $this->nome = $linha['Nome'];
                $email_remetente = "laenderquadros@gmail.com";
                $this->mensagem = '
                                    <html>
                                    <body>
                                    <table cellpadding="10" style="background-color: rgb(250,250,250); border: 1px solid #4E69B2; font-family: arial, helvetica, sans-serif; padding: 20px; width: 100%;">
                                       <tr>
                                         <td>
                                           <h1> <strong style="color:  #333333; font-size: 25px;">Olá, ' . $this->nome . '</strong></h1>
                                           <p style="color:  #333333; font-size: 20px;"> Este é um lembrete mensal. Que tal investir em segurança e trocar suas senhas periodicamente de forma fácil?</p>
                                           <p style="color:  #333333; font-size: 20px;">Segue o link do nosso gerador de senhas online: gmsenhas.esy.es</p>
                                           <p style="color:  #333333; font-size: 20px;">Para cancelar o lembrete mensal, <a href="index.php?id=' . $linha['id'] . '&name=' . $linha['name'] .'">clique aqui</a></p>
                                           <p></br><strong style="color:  #333333; font-size: 20px;">Agradecemos a utilização. Equipe GM senhas.</strong></p>
                                           <center><a href="gmsenhas.esy.es"><img alt="GM-SENHAS" height="150" width="150" src="http://gmsenhas.esy.es/img/icon-gm.png"></a></center>
                                         </td>
                                        </tr>
                                     </table>
                                     </body>
                                     </html>';

                $this->email = $linha['Email'];

                $this->enviarEmail($this->email, $this->assunto, $this->mensagem, $email_remetente,$this->headers); 

  }

}

PS: Tentei encontrar algo relacionado a este erro, porém não encontrei solução.

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpa Rodrigo, esqueci de postar.

 public function enviarEmail($email, $assunto, $mensagem, $email_remetente){

        //Lembrar de usar a variável do campo nome;
        $this->headers = "MIME-Version: 1.1\n";
        $this->headers .= "Content-type: text/plain; charset=iso-8859-1\n";
        $this->headers .= "From:" . $email_remetente . "\n"; //email de quem envia
        //$headers .= "Cc:contato@com.br\n"; //email da pessoa
        $this->headers .= "Return-Path:" . $email_remetente . "\n";
        $this->headers .= "Reply-To: " . $email_remetente . "\n";

        $this->envio = mail($email, $assunto, $mensagem, $this->headers, "-f$email_remetente");

    }

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta alterar esta linha:

$this->headers .= "Content-type: text/plain; charset=iso-8859-1\n";

Para:

$this->headers .= "Content-type: text/html; charset=iso-8859-1\n";

Veja se ajuda.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.