Enviando um email com a classe Mail do PEAR

PEAR
Enviado por Pedro Faria em Ter, 25/10/2005 - 09:18.PEAR

Tenho observado que algumas pessoas tem tido dificuldade de enviar um email com esta classe que é baum de mais da conta! :D

vou dar um exemplo simples porem tentarei abordar todas as funcionalidades da classe...

  1. <?php
  2.  
  3. include('Mail.php');
  4. include('Mail/mime.php');
  5.  
  6. $text = 'Versao texto do email';
  7. $html = '<html><body>Versao HTML do email</body></html>';
  8. $file = '/home/richard/example.php';
  9. $crlf = "\n";
  10.  
  11. $mime = new Mail_mime($crlf);
  12.  
  13. $mime->setTXTBody($text);
  14. $mime->setHTMLBody($html);
  15. $mime->addAttachment($file, 'text/plain');
  16.  
  17. $body = $mime->get();
  18.  
  19. $recipients = array(
  20.     'email1@seudominio.com.br',
  21.     'email2@seudominio.com.br',
  22.     'email3@seudominio.com.br'
  23. );
  24.  
  25. $headers['From']'eu@meudominio.com.br';
  26.  
  27. $headers['To'] = 'email1@seudominio.com.br';
  28. $headers['Cc'] = 'email2@seudominio.com.br';
  29. $headers['Bcc'] = 'email3@seudominio.com.br';
  30.  
  31. $headers['Subject'] = 'Test message';
  32.  
  33. $headers = $mime->headers($headers);
  34.  
  35. $params['host'] = 'smtp.meudominio.com.br';
  36. $params['port'] = '25';
  37. $params['auth'] = TRUE;
  38. $params['username'] = 'eu=meudominio.com.br';
  39. $params['password'] = 'minhasenha';
  40.  
  41. $mail_object =& Mail::factory('smtp', $params);
  42.  
  43. $rs = $mail_object->send($recipients, $headers, $body);
  44.  
  45. if (PEAR::isError($rs)) {
  46.     echo $rs->getMessage()."\n";
  47. }
  48.  
  49. ?>

Repare que neste exemplo que eu estou enviando o email por smtp que exige autenticação, mas se não precisar autenticar, basta tirar as variáveis $params['auth'], $params['username'] e $params['password']

Bem... acho que eh só isso tudo!

T+



Enviado por htc (não verificado(a)) em Sáb, 08/07/2006 - 00:14.

fiz todos esses procedimentos, peguei os pacotes pear, mas não consegui enviar autenticando. Essa pareceu a melhor opção para quem hospeda no seu pc e tem ip dinamico. Testei tb phpmailer, mas não consegui autenticar, como configuro os pacotes que baxei?

Enviado por Pedro Faria em Seg, 10/07/2006 - 10:21.

Qual foi a mensagem de erro???

t+

Enviado por saulo petri (não verificado(a)) em Qua, 26/07/2006 - 16:32.

alguem cola o codigo da classe ou passa o link dela pra baixar....
entrei la no pear.php.net, axei um arquivo mail...tgz

nao sei se é isso mesmo

Enviado por Pedro Faria em Qua, 26/07/2006 - 16:41.

É este mesmo...

mas seria interessante vc ter o PEAR instalado vai ficar mais organizado!

t+

Enviado por saulo petri (não verificado(a)) em Qui, 27/07/2006 - 11:08.

da pra explicar como eu tranformo esse arquivo em um mail.php?
mudei a extensao mas o código ficou todo bagunçado.

Enviado por Vinny (não verificado(a)) em Sáb, 12/08/2006 - 03:18.

Vi o código realmente achei interessante só q pude ver q ele da 2 includes, gostaria de saber onde posso achar, obrigado ;)

Vinny =]³

Enviado por guest (não verificado(a)) em Seg, 28/08/2006 - 18:10.

Como faço para pegar variáveis de um formulário no Flash com esse mail do Pear?

Enviado por Pedro Faria em Seg, 28/08/2006 - 18:21.

para pegar?

normalmente... da mesma forma que você pegaria via formulario de html...

t+

Enviado por guest (não verificado(a)) em Ter, 29/08/2006 - 10:05.

Me expressei mal. Mas meu problema é o seguinte, não entendo quase nada de PHP e agora preciso enviar um e-mail autenticado utilizando o Pear.
Detalhe: as variáveis serão enviadas pelo Flash para o arquivo em PHP.
Procurei no site do Pear, no Google, algumas listas de discussão e fiz
alguns testes, e só consigo enviar o e-mail mas sem que as variáveis sejam capturadas do arquivo em Flash. Depois tentei acrescentar as variáveis através do Post mas o e-mail nem foi enviado. Se vc puder me indicar um caminho eu agradeço.

Enviado por Pedro Faria em Ter, 29/08/2006 - 10:13.

Cara... faz o seguinte

  1. <?php
  2.   var_dump($_GET, $_POST);
  3. ?>

ele vai imprimir na tela a estrutura das variaveis $_GET e do $_POST... dae vc vai ver como o flash esta mandando os valores do formulario.

Enviado por guest (não verificado(a)) em Ter, 29/08/2006 - 10:30.

Veio isso como resposta:

array(0) { } array(0) { }

Enviado por Pedro Faria em Ter, 29/08/2006 - 10:50.

Entao o problema esta no flash que nao esta mandando os valores corretamente.

Enviado por guest (não verificado(a)) em Ter, 29/08/2006 - 11:13.

Isso é um senhor problema...
Sempre utilizei esse modelo e nunca tive nenhum erro.