nakid.mkt 0 Denunciar post Postado Julho 13, 2007 Oi Pessoal, tudo bem?Pesquisei o fórum inteiro mas não achei nada que resolvesse meu problema.segue código: <?php$email_para = "marcos.mkt@itabom.com.br";$email_assunto = "Olá, sou uma nova mensagem!";$email_conteudo = "<html><body>Oi! Eu sou um <b>e-mail</b> em formato HTML!</body></html>";$email_de = "remetente@mail.com";//Cabecalhos: aqui está o problema;$headers = "MIME-Version: 1.0\r\n";$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";$headers .= "From: \"$nome\" <$email_de>\r\n";if (mail($email_para, $email_assunto, $email_conteudo, $headers)) { echo "E-mail enviado com sucesso!!!";}else { echo "Ocorreu um erro durante o envio do e-mail.";}?> Problema...se eu mando com esse "headers", a mensagem "E-mail enviado com sucesso!!!" aparece mas eu não recebo o email. Se eu tiro a parte:$headers = "MIME-Version: 1.0\r\n";$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";e mando só o:$headers = "From: \"$nome\" <$email_de>\r\n"; o email chega mas ao invés de aparecer o HTML interpretado, aparece o código-fonte inteiro.alguém já passou por isso? Compartilhar este post Link para o post Compartilhar em outros sites
Fabio Morikawa 0 Denunciar post Postado Julho 13, 2007 espero que ajude class Email{ var $_to; var $_subject; var $_variables; var $_headers; var $_names; var $_message; function Email($to,$subject,$variables,$names) { $this->_to = $to; $this->_subject = $subject; $this->_variables = $variables; $this->_names = $names; $this->_headers = "MIME-Version: 1.0\r\n"; $this->_headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; $this->_headers .= "From: EMAIL CONTATO <".$to.">\r\n"; $this->createMessage(); } function createMessage() { $this->_message = ' <html> <head> <title>.:: EMAIL DE CONTATO ::.</title> </head> <body> <table>'; for($i=0,$len=sizeof($this->_variables); $i<$len;$i++) { $this->_message .= ' <tr> <td><b>'.$this->_names[$i].'</b> '.$this->_variables[$i].'</td> </tr> '; }; $this->_message .= ' </table> </body> </html> '; } function sendEmail() { if($this->_to != '' && $this->_variables != ''){ mail($this->_to, $this->_subject, $this->_message, $this->_headers); echo 'Email send'; }else{ echo 'Error send to email'; } }}; $mail = new Email('nome@xxx.com','Assunto',array($nome,$sobrenome),array('Fabio','Morikawa')); $mail->sendEmail(); Compartilhar este post Link para o post Compartilhar em outros sites
nakid.mkt 0 Denunciar post Postado Julho 16, 2007 Obrigado pela ajuda, Fábio,Mas o problema persiste;Aparece 'Email send" mas nada de chegar na minha caixa de entradas.Se eu tido as duas primeiras linhas do headers:$this->_headers = "MIME-Version: 1.0\r\n";$this->_headers .= "Content-type: text/html; charset=iso-8859-1\r\n";o email chega mas com todo código HTLM na minha tela.Estou usando outlook pra ver as mensagens. Não sei se é problema do outlook.Não é possível que uma coisa tão simples não funcione.Mas de qualquer forma, muito legal o seu código, Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
klonder 14 Denunciar post Postado Julho 16, 2007 Nessa parte que você está colocando: $headers .= "From: \"$nome\" <$email_de>\r\n";A variável $nome está recebendo qual valor?Eu uso a função mail() com frequência, e nunca me deu problema algum... nessa parte, eu faço assim://Endereço do remetente:$headers .= "From: ".$_POST['nome_remetente']." <".$_POST['email_remetente'].">\n";Mas os POSTs podem ser substituídos por outras variáveis, ou por valores fixos... vai depender do que você pretende fazer... Compartilhar este post Link para o post Compartilhar em outros sites
nakid.mkt 0 Denunciar post Postado Julho 16, 2007 $nome recebe o nome da pessoa que enviou o email.Mas acho que descobri o problerma aqui. Não é no código. Provavelmente os emails vindos do meu código php não estão passando nofiltro anti-span da rede. Tentei mandar emails de outros sites (como aqueles "envie para um amigo") e esses emails também não chegaram pra mim.vou checar aqui.Obrigado por responderem.Nakid Compartilhar este post Link para o post Compartilhar em outros sites