Re: [php-brasil] SMTP - Envio de Email localmente

202 views
Skip to first unread message

Eduardo Kraus

unread,
Oct 9, 2012, 10:21:30 PM10/9/12
to php-b...@googlegroups.com
SMTP do GMail não roda na porta 25 a mais e anos. Também o SMTP do GMAIL não aceita envio não autenticado.

Malhor para testra localmente é instalar um servidor de SMTP na sua própria maquina.

Eduardo Kraus
Professor
kr...@eduardokraus.com
www.eduardokraus.com
Blog PHP php.eduardokraus.com
Blog Adobe Flex flex.eduardokraus.com




Em 9 de outubro de 2012 17:15, Leonardo Felipe <leonar...@gmail.com> escreveu:
Salve galera, estou desenvolvendo um formulariozinho para envio de mensagem com arquivo em anexo.

Segui este tutorial: http://luizazevedo.com.br/blog/enviando-email-com-anexo-em-php

Porém quando submeto a página para enviar o email, aparece a seguinte mensagem:

Warning: mail() [function.mail]: Failed to connect to mailserver at "smtp.gmail.com" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\wamp\www\envioTrabalho\index.php on line 75

Assim como a mensagem informa fui no php.ini para fazer alterações no SMTP e sendmail_from, ficando desta forma:

[mail function]
; For Win32 only.
; http://php.net/smtp
;SMTP = localhost
SMTP = smtp.gmail.com
; http://php.net/smtp-port
smtp_port = 25

; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = meu_email_...@gmail.com // aqui pus meu email verdadeiro

------
Mesmo assim continua apresentando a mensagem de erro.... Então conto com a ajuda de vocês!!

Agradecimento antecipados!

--
Você está recebendo esta mensagem porque se inscreveu no grupo "php-brasil" dos Grupos do Google.
Para ver esta discussão na web, acesse https://groups.google.com/d/msg/php-brasil/-/Nt-ZIVOjDrsJ.
Para postar neste grupo, envie um e-mail para php-b...@googlegroups.com.
Para cancelar a inscrição nesse grupo, envie um e-mail para php-brasil+...@googlegroups.com.
Para obter mais opções, visite esse grupo em http://groups.google.com/group/php-brasil?hl=pt-BR.

Leonardo Felipe

unread,
Oct 10, 2012, 6:40:00 AM10/10/12
to php-b...@googlegroups.com
Obrigado pela dica Kraus, você poderia indicar algum que seja simples ou pouco complexo para instalar e configurar...

Agradecimentos antecipados!

Edy

unread,
Oct 9, 2012, 11:17:34 PM10/9/12
to php-b...@googlegroups.com
Estou usando uma ferramenta chamada "Test Mail Server Tool" pode ser que lhe ajude.

Em 9 de outubro de 2012 23:21, Eduardo Kraus <eduard...@gmail.com> escreveu:



--

 www.edyonil.com
 Desenvolvimento de sites, hotsites, blogs e intranets. - Salvador-BAHIA
 twitter: @edyonil
 Fone: (71)8615-9790

' Rafael .

unread,
Oct 9, 2012, 11:03:29 PM10/9/12
to php-b...@googlegroups.com
Usa uma classe do zendframework chamada Zend_Mail e configura um transporte com o servidor smtp do gmail
Para cancelar a inscrição nesse grupo, envie um e-mail para mailto:php-brasil%2Bunsu...@googlegroups.com.

Para obter mais opções, visite esse grupo em http://groups.google.com/group/php-brasil?hl=pt-BR.
--
Você está recebendo esta mensagem porque se inscreveu no grupo "php-brasil" dos Grupos do Google.

André Buarque

unread,
Oct 9, 2012, 5:49:26 PM10/9/12
to php-b...@googlegroups.com
Experimente modificar a porta para 587.

Em 9 de outubro de 2012 17:15, Leonardo Felipe <leonar...@gmail.com> escreveu:
Salve galera, estou desenvolvendo um formulariozinho para envio de mensagem com arquivo em anexo.

Segui este tutorial: http://luizazevedo.com.br/blog/enviando-email-com-anexo-em-php

Porém quando submeto a página para enviar o email, aparece a seguinte mensagem:

Warning: mail() [function.mail]: Failed to connect to mailserver at "smtp.gmail.com" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\wamp\www\envioTrabalho\index.php on line 75

Assim como a mensagem informa fui no php.ini para fazer alterações no SMTP e sendmail_from, ficando desta forma:

[mail function]
; For Win32 only.
; http://php.net/smtp
;SMTP = localhost
SMTP = smtp.gmail.com
; http://php.net/smtp-port
smtp_port = 25

; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = meu_email_...@gmail.com // aqui pus meu email verdadeiro

------
Mesmo assim continua apresentando a mensagem de erro.... Então conto com a ajuda de vocês!!

Agradecimento antecipados!

--
Você está recebendo esta mensagem porque se inscreveu no grupo "php-brasil" dos Grupos do Google.
Para ver esta discussão na web, acesse https://groups.google.com/d/msg/php-brasil/-/Nt-ZIVOjDrsJ.
Para postar neste grupo, envie um e-mail para php-b...@googlegroups.com.

Eduardo Kraus

unread,
Oct 10, 2012, 6:43:32 AM10/10/12
to php-b...@googlegroups.com
No linux só instalar o sendmail e no MAC já vem pré instalado.

Na bosta Windows faz mais de 2 anos que não mexo e não tenho a menor idéia....

Leonardo Felipe

unread,
Oct 10, 2012, 8:34:32 AM10/10/12
to php-b...@googlegroups.com
Obrigado André pela dica, fiz as alterações para testar deste modo, até achei num link do gmail, informando para testar com as portas 465 ou 587.

Mas o problema persistiu. Mostrando a mensagem:

Warning: mail() [function.mail]: Failed to connect to mailserver at "smtp.gmail.com" port 587, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\wamp\www\envioTrabalho\index.php on line 75

Testei com as duas portas deste jeito:


[mail function]
; For Win32 only.
; http://php.net/smtp
;SMTP = localhost
SMTP = smtp.gmail.com
; http://php.net/smtp-port
smtp_port = 587 // Ou 465 ( Testei com as duas Portas )


; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = meu_email_...@gmail.com // aqui pus meu email verdadeiro

Leonardo Felipe

unread,
Oct 10, 2012, 7:10:57 AM10/10/12
to php-b...@googlegroups.com
Obrigado Edy.

O Email passou sem mostrar o Warning, vlw.

Porém ta mostrando a mensagem desta forma, é normal por causa da ferramenta?

--XYZ-101020120107-ZYX
Content-Type: text/html; charset='iso-8859-1'
Content-Transfer-Encoding: 8bits

<strong>Autor 1: </strong>leo<br> <strong>Email 1: </strong>leon...@mail.com<br> <strong>CPF: </strong>12345678910<br><br> <strong>Autor 2: </strong><br> <strong>Email 2: </strong><br><br> <strong>Autor 3: </strong><br> <strong>Email 3: </strong><br><br> <strong>Autor 4: </strong><br> <strong>Email 4: </strong><br><br> <strong>Autor 5: </strong><br> <strong>Email 5: </strong>\r\n--XYZ-101020120107-ZYX
Content-Type: image/jpeg; name='Pôr-do-sol.jpg'
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename='Pôr-do-sol.jpg'
/9j/4AAQSkZJRgABAgEAYABgAAD/7Q0YUGhvdG9zaG9wIDMuMAA4QklNA ..... (codifica)

Emerson Maia

unread,
Oct 10, 2012, 8:20:13 AM10/10/12
to php-b...@googlegroups.com

http://lmgtfy.com/?q=enviar+email+pelo+windows+php

E tem muitas soluções atuais para isso, sempre quando for seguir algum tutorial, ve se não tem alguma função depreciada, lembre-se, a internet vive em constante mudança, portas mudam, formas e jeitos mudam, e o principal, ve a data do tutorial para você não dar tiro no pé.

Recomendo o phpmailer, ou configurar manualmente no php.ini o smtp para o envio.
Reforçando, o envio de e-mail, na maioria dos hosts , requer autenticação.

http://sourceforge.net/projects/phpmailer/

Abraços.

Eduardo Kraus

unread,
Oct 11, 2012, 2:11:48 AM10/11/12
to php-b...@googlegroups.com
Mais eu já havia dito que não adiantava testar com outras portas que o GMail só aceita envio de E-mail autenticado.

Me lembrei agora que no Windows XP eu tinha a opção de instalar o SMTP do IIS. Não tenho a menor idéia se isso funciona no ruWindow 7...

Edy

unread,
Oct 10, 2012, 11:18:25 PM10/10/12
to php-b...@googlegroups.com
É sim leonardo, a ideia dessa ferramenta é possibilitar o teste de email localmente. O arquivo gerado pode até ser exportado para uma ferramenta cliente de mail. Tipo Outlook, mas não recomendo. Apenas para testar se ta tudo okay no teste.

Abraços

--
Você está recebendo esta mensagem porque se inscreveu no grupo "php-brasil" dos Grupos do Google.
Para postar neste grupo, envie um e-mail para php-b...@googlegroups.com.
Para cancelar a inscrição nesse grupo, envie um e-mail para php-brasil+...@googlegroups.com.
Para obter mais opções, visite esse grupo em http://groups.google.com/group/php-brasil?hl=pt-BR.

Leonardo Felipe

unread,
Oct 11, 2012, 7:52:24 AM10/11/12
to php-b...@googlegroups.com
Pessoal, testei várias possibilidades, mas não teve jeito. Creio que o Firewall do Proxy daqui da empresa esteja esteja bloqueando no meio do caminho... Então subi os arquivos pro site e estou fazendo os testes em produção mesmo, sem dor de cabeça....

O único problema que estou tendo aqui, e espero que consigam me ajudar, é o seguinte:

Faço e concluo o Upload, salvo o arquivo em uma pasta do servidor e também o anexo ao email. Tudo ocorre sem erro.Mas ao clicar nele para baixar vem com um prefixo e sufixo no nome tipo, tá no anexo do email assim, teste.pdf. Mas ao fazer download na minha máquina ele vem com o nome asssim, &#039;teste.pdf&#039;.

Se eu apagá-los (prefixo e sufixo) do nome, o arquivo abre normalmente para visualização de seu conteúdo, ou seja, não está corrompido, mas sim renomeado ao fazer download.

Já passaram por algo parecido? Qual seria a solução para ao fazerem o download o arquivo não ser renomeado?

Agradeço antecipadamente!

Edy

unread,
Oct 11, 2012, 1:33:58 PM10/11/12
to php-b...@googlegroups.com
Esses caracteres são conversão do html para caracteres especiais, que representa o simbolo de aspas simples. Verifique no seu campo se ele não está enviado alguma informação errada na string. O que parece é que seu arquivo está sendo enviado assim:

' teste.pdf '

Por isso está ocorrendo a conversão do carácter especial

Em 11 de outubro de 2012 08:52, Leonardo Felipe <leonar...@gmail.com> escreveu:
&#039

Michel Wilhelm

unread,
Oct 11, 2012, 1:34:50 PM10/11/12
to php-b...@googlegroups.com
Para este caso, e muitos outros, recomendo dar uma olhada no phpMailer, lá tem exemplos para enviar anexos e utilizar o SMTP do Gmail corretamente.

Ou você vai precisar instalar um servidor SMTP local e verificar sempre no SPAM :)
Reply all
Reply to author
Forward
0 new messages