Formulário "Fale Conosco" em HTML/PHP autenticado no SMTP Server

Como a maioria dos servidores SMTP está migrando a porta de envio padrão 25 para 587, eu necessitava de um
Script que, além de fornecer a autenticação no Servidor para o envio do e-mail ser garantido, ele também tinha que
conectar-se na porta correta.

[ Hits: 117.892 ]

Por: clayton Barbosa Cézar em 16/05/2012 | Blog: http://www.cryptmedia.net


Arquivo INI - Conclusão



Criando um arquivo INI para controlar o envio

Criaremos um arquivo "config.ini" , que atuará como um controlador de envio de e-mail pelo formulário.

Mais uma vez, copie e cole o conteúdo e salve como: Config.ini

NÃO ESQUEÇA DE MODIFICAR O VALOR DA VARIAVEL '$emaildest', para o endereço do seu e-mail :

<!-- INICIO DO CÓDIGO --> <?php // Isto é quase como uma chave se vc não quiser mais receber mensagens é só colocar 0 // 1 = Ligado - 0 = Desligado // ...::: BY SK15 ® :::... $certo="1"; $emaildest="seuemail@seuprovedor.com.br"; //modifique para o seu e-mail ?> <!-- FIM DO CODIGO -->


Conclusão

Criado o formulário no arquivo "htm" do seu site e os 5 arquivos PHP, mais o INI:

formail.php, alterar_esse_arquivo.php , class.phpmailer.php , class.smtp.php , phpmailer.lang-br.php e config.ini

É só transferir todos para o servidor do seu site por FTP, ou como preferir, e testar o envio levando em conta que o PHP já está instalado e rodando corretamente em seu WebServer.

Boa sorte!

E até a próxima!

Página anterior    

Páginas do artigo
   1. Introdução
   2. Criando o 'form' em HTML
   3. Criando os arquivos PHP 1
   4. Criando os arquivos PHP 2
   5. Criando os arquivos PHP 3
   6. Criando os arquivos PHP 4
   7. Criando os arquivos PHP 5
   8. Arquivo INI - Conclusão
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Instalando o Gerenciador Clínico Odontológico

Aces Downz - Gerenciador de downloads e controle de tráfego

Lighttpd + SQLite + PHP

Instalando o CMS XOOPS

Estatísticas para todos

  
Comentários
[1] Comentário enviado por josef em 17/05/2012 - 16:13h

Caracas, que trabalho legal, vou testar, grato por compartilhar.

[2] Comentário enviado por stremer em 18/05/2012 - 11:36h

Amigo... estes fontes são realmente bons e podem ser uteis em diversos casos!

Mas se o seu problema era apenas enviar e-mail, não seria mais facil usar a função pronta do php chamada mail.

Um simples search no google:
http://www.codigofonte.net/dicas/php/175_enviando-email-pelo-php-com-o-mail

Esse monte de arquivo php poderia ser troca por somente um com:
<?
mail("ze@criarweb.com,maria@criarweb.com","assunto","Este é o corpo da mensagem")
?>

Abs

[3] Comentário enviado por claycezar em 18/05/2012 - 17:08h

Olá Stremer,

O problema era enviar email usando autenticação e pela porta 587 do servidor, verificar e validar os dados do formulário para envio, apresentar mensagens de erro do servidor para o usuário quando não fosse possivel enviar por que o servidor não respondeu ou algo erro aconteceu. Por isto usei este monte de arquivos, mas se tiver uma maneira mais simples de fazer o que esses arquivos fazem com menos linhas seria uma boa.

[4] Comentário enviado por adfs03 em 08/06/2012 - 23:59h

Ola claycezar ...

Eu fiz exatamente o que você explicou no tutorial....sou "dummie" em PHP....estou testando o form, com o EasyPHP, e na execução ele informa o seguinte erro....

"Parse error: syntax error, unexpected T_VARIABLE in C:\Program Files (x86)\EasyPHP-5.3.9\www\Contato\config.ini on line 9"

Você pode me ajudar?

Obrigado.

Alexandre.

[5] Comentário enviado por claycezar em 09/06/2012 - 06:44h

Bom dia,

adsf03 pode comentar a linha com a variavel $emaildest do arquivo .ini ou apaga-la, já que o formail recebe o endereço do seu email pela variavel $seu_email no arquivo "alterar_esse_arquivo.php". Eu acabei esquecendo de apagar essa linha que está com uma variavel sem mais utilidade. A unica variavel que é preciso conservar no arquivo config.ini é $certo="1"; (para enviar emails) OU $certo="0"; (para nao enviar) e mais nada.

[6] Comentário enviado por gsevilhajr em 21/06/2012 - 11:17h

Bom dia, claycezar.

Eu copiei tudo certinho mas esta dando este erro:


Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/sevilhac/public_html/teste_formmail/formail.php:2) in /home/sevilhac/public_html/teste_formmail/formail.php on line 13

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/sevilhac/public_html/teste_formmail/formail.php:2) in /home/sevilhac/public_html/teste_formmail/formail.php on line 13

Warning: Cannot modify header information - headers already sent by (output started at /home/sevilhac/public_html/teste_formmail/formail.php:2) in /home/sevilhac/public_html/teste_formmail/formail.php on line 14


Poderia me ajudar?
Obrigado.

[7] Comentário enviado por claycezar em 22/06/2012 - 00:41h

Olá gsevilhajr,

Dá uma olhada se na hora de copiar foi colado o codigo corretamente respeitando os "<?php e ?>", elimine espaços e linhas em branco, se continuar o erro, mude a codificação do arquivo que você gerou como formail.php para UTF8. (abra ele no bloco de notas mesmo, e mude a codicação usando o "salvar como..").

[8] Comentário enviado por janaraujo em 11/06/2013 - 17:57h

Caramba!!!!!! Até que enfim funcionou!!! Muito obrigado amigo. pesquisei varios sites e nenhum tinha funcionado até agora. Muito obrigado mesmo. Aqui rodou na boa!!!!

[9] Comentário enviado por scooter em 07/09/2013 - 05:10h

Poderia me ajudar no formulário esta apresentado o seguinte erro.

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/u936331729/public_html/class.phpmailer.php on line 1421


linha 1421
if(!isset($_SERVER['REMOTE_ADDR']))

[10] Comentário enviado por shindo em 29/10/2013 - 13:46h

Boa tarde, primeiramente obrigado pelo formulário, aqui está ocorrendo o seguinte erro:

Warning: addcslashes() [function.addcslashes]: Invalid '..'-range, '..'-range needs to be incrementing in /var/www/html/rptinfo.com.br/web/class.phpmailer.php on line 1144
Ocorreram erros ao enviar email

não sei como posso corrigir, alguma idéia? desde já obrigado.

[11] Comentário enviado por devstar em 24/09/2018 - 11:06h

Eu recomendo que você siga este tutorial aqui no formulário de contato php (https://www.cloudways.com/blog/custom-php-mysql-contact-form/) para criar seu próprio formulário em html, php e mysql. Este formulário também tem um script de validação, para que você não receba e-mails ou spams inválidos.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts