Olá Pessoal, vou postar hoje um exemplo do uso do Zend_Mail, utilizando o corpo da mensagem como HTML. Para quem inseriu a lib do ZF completa na raiz, só precisa usar o require_once. Mas, Aqueles que não estão a fim de enviar toda a lib pra o server ai vai o que é necessário:
PASTAS E ARQUIVOS NECESSÁRIOS
- Validade.php
- Registry.php
- Mime.php
- Mail.php
- Loader.php
- Validade/
- Mail/
- Loader/
- Mime/
Esses itens estão inseridos na pasta LIB do pacote FULL da ZendFramewok. Copie todos, crie uma pasta com o nome zend na raiz do seu servidor remoto e cole todo o conteúdo lá.
Vamos criar uma classe especifica , deixando nosso código organizado e reutilizável.
email.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | < ?php /** *nome: email.php *Classe: EmailZend *Descrição: Envio de e-mails atraves da ZF. */ class EmailZend { /**atributos*/ public $_SMTP; /** * Contrutor com parametros * * @return instancia */ function __construct(){} /** * Enviar Emails * * Envia emails via SMTP autenticado * * @param destinatario * @param remetente * @param assunto * @param mensagem * */ function enviarEmail($destinatario, $remetente, $assunto, $mensagem) { require_once *path da raiz*'/Zend/Mail.php'; $mail = new Zend_Mail(); $mail->setBodyHtml($mensagem); $mail->setFrom($remetente, 'Namoro em Peso'); $mail->addTo($destinatario, ''); $mail->setSubject($assunto); $mail->send($this->_SMTP); } /** * Configurar Servidor * * Configurar servidor de saida SMTP * @param $server * @param $usuario * @param $senha * */ function confServ($server='SERVIDOR STMP', $usuario='USUARIO DO STMP AUTENTICADO', $senha='*****') { require_once *path da raiz*'/Zend/Mail/Transport/Smtp.php'; $config = array( 'auth' => 'login', 'username' => $usuario, 'password' => $senha, 'port' => 25/*nao precisa*/ ); $this->_SMTP = new Zend_Mail_Transport_Smtp($server, $config); } } ?> |
Caso seja necessária a autenticação com ssl e em outra porta, geralmente a 465, o código da linha 52-57 ficará assim:
52 53 54 55 56 57 58 | $config = array( 'auth' => 'login', 'username' => $usuario, 'password' => $senha, 'ssl' => 'ssl', 'port' => 465 ); |
Por último é só chamar a classe no seu sistema:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | < ?php /*Sessao do novo sistema de e-mail*/ require_once *path da raiz*'/email.php'; /*DADOS MENSAGEM*/ $para = 'destino@emaioldodestinatario.com.br'; $assunto = 'testando envio pelo Zend_Mail.'; $mensagem = ' <html> <head> <title>Teste de envio pelo Zend_Mail</title> </head> <body> <p>MENSAGEM ENVIADA COM SUCESSO</p> </body> '; $remetente='fish@fish.jpa.com.br'; /*FIM DOS DADOS*/ /*Nossa Classe*/ $zmail= new EmailZend(); $zmail->confServ(); $zmail->enviarEmail($para , $remetente, $assunto, $mensagem); ?> |
Então é isso. Os arquivos para Download estão aqui: LINK
Espero ter ajudado,
Fish

Ultimos Comentários