Envio de email Alguém sabe o porque desse código funcionar na versão 4.0 do FW e não funcionar mais na versão 5.7 ??? Help-me!!! ...
AR
Envio de email  
Alguém sabe o porque desse código funcionar na versão 4.0 do FW e não funcionar mais na versão 5.7 ??? Help-me!!!

 
  1. <?php
  2. $preferences = SystemPreference::getAllPreferences();
  3. $mail = new TMail;
  4. $mail->SMTPDebug = 2;
  5. $mail->setFrom( trim($preferences['mail_from']), 'CRONOTEAM' );
  6. $mail->addAddress( trim($inscricao->individuo->email), $inscricao->individuo->name );
  7. $mail->setSubject( 'CronoTeam - Comprovante de inscrição' );
  8. $mail->addAttach( $file, 'Comprovante de inscrição.pdf' );
  9. if ($preferences['smtp_auth'])
  10. {
  11. $mail->SetUseSmtp();
  12. $mail->SetSmtpHost($preferences['smtp_host'], $preferences['smtp_port']);
  13. $mail->SetSmtpUser($preferences['smtp_user'], $preferences['smtp_pass']);
  14. }
  15. $body = str_replace('##NOME DO ATLETA##', $inscricao->individuo->name, $preferences['corpo_comprovante']);
  16. $body = str_replace('##EVENTO##', $inscricao->modalidade->evento->descricao, $body);
  17. $mail->setTextBody($body);
  18. $mail->send();
  19. ?>

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (4)


AR

Descobri, eu havia modificado na época, a classe TMail e tinha deixado assim:

 
  1. <?php
  2. //if (strstr($this->pm-> Host, 'gmail') !== FALSE)
  3. //{
  4. $this->pm-> SMTPSecure = "ssl";
  5. //}
  6. ?>


Agora eu vi que deveria ter feito $mail->SMTPSecure = "ssl" em meu código.

Obrigado a todos que contribuíram para eu ser mais autodidata!!! ; ))))))
AR

Foi mal pela vergonha que eu passei, não deu certo apenas por $mail->SMTPSecure = "ssl"; no meu código, alguém tem alguma luz.
Ratifico que quando atribui dentro da classe TMail, realmente funciona.
NR

TMail não é filha direta da PHPMailer, veja que no construtor ela instancia a PHPMailer, mas a joga em uma varíável "pm". Dessa forma, ao fazer "$mail->SMTPSecure" você está atribuindo uma variável à classe TMail somente.

Crie uma função dentro de TMail para retornar "pm"(pois é private). Dessa forma você poderá atribuir um valor diretamente à ela:
 
  1. <?php
  2. $mail->get_pm()->SMTPSecure = "ssl";
  3. ?>
AR

Vlw Nataniel!!!