Vocabulário: arquivo = ficheiro
A primeira linguagem de programação que aprendemos para desenvolver um website é o HTML, e aliado ao CSS conseguimos desenvolver um website básico inteiro. Mas quando chega no menu contato, nenhum cliente mais aceita que se coloque lá um link que abrirá o Outlook ou Thunderbird do usuário. É preciso um formulário de contato.
E nesse momento é necessário que você saiba uma função do php. A mail(). É ela a estrela deste tutorial.
Criaremos um formulário e o código PHP para validar e enviar as informações preenchidas para o e-mail do cliente.
Formulário HTML
Vamos iniciar com o código HMTL básico para criação do formulário:
Formulário de Contato
A propriedade action do tag form informa para onde devem ser enviadas as informações quando o formulário for submetido. Apontamos para o arquivo que conterá o código PHP.
Caso deseja fazer tudo em um único arquivo o código ficaria:
29 Responses
Parabéns amigo pelo tuto.
Abraços forte
Olá! Obrigado pela mensagem de apoio. Um Abraço Rui Soares
Estava procurando isso e com uma boa explicação. Valeu mesmo pelo post.
Olá! Obrigado pelo comentário. Se tiver alguma dúvida, pergunte. Um Abraço Rui Soares
Olá Rui,
Estou com problema para com a função mail. ele esta dando a mensagem
Warning: mail() [function.mail]: Failed to connect to mailserver at “localhost” port 25, verify your “SMTP” and “smtp_port” setting in php.ini or use ini_set() in C:\Arquivos de programas\VertrigoServ\www\ecologic\contatos\envia-email.php on line 27
Eu já editei o php.ini e deixei assim
[mail function]; For Win32 only.SMTP=smtp.gmail.comsmtp_port=465
; For Win32 only.;sendmail_from=meuemail@meudominio.com.br
Olá Danilo! Se você está utilizando o Gmail, sugiro que leia este artigo, incluindo os comentários:http://deepakssn.blogspot.com/2006/06/gmail-php-s… Um Abraço Rui Soares
Atenção, HTML não é uma linguagem de programação. ; )
Olá Luís! Temos aqui uma ideia sobre conceitos:https://www.webmaster.pt/tutoriais-programacao-web… onde dividimos o que faz parte da categoria Web Design e o que faz parte da categoria Programação. Em termos de conceito, o HTML é uma linguagem de marcação. Mas, não vou ser demasiado rigoroso no uso que os vários autores fazem desses conceitos, excepto se o artigo for na categoria teoria > web design. O que importa aprender neste tutorial é o código PHP necessário para processar o envio dos dados inseridos num formulário para uma conta de email. Mas, concordo contigo que o HTML não é uma linguagem de programação. Recomendo TODOS os tutoriais do Maicon. Um Abraço Rui Soares
so um porem corrigindo em:
if (isset($_POST['enviar'])
é
if (isset($_POST['enviar'])) // esqceu de fechar o parenteses
Olá! Faltava mesmo! Obrigado. Um Abraço! Rui Soares
O meu nome é manuel mas não sou um grande programador , precisava de uma ajuda, fiz download do teu ficheiro formulário, necessitava disso para o meu site, agora o meu problema e que o meu site é um índex.html e o índex.swf, então eu criei uma pasta no ftp em que dei o nome contacto onde tem os teus ficheiros já alterados para o meu e-mail e essas coisas, agora não sei a síntese que devo aplicar no fla
para ele efectuar o geturl mas em versão pop up, ou seja a pessoa carrega num botão a indicar formulário e ele aparecesse como pop up, e possível?
Ei cara, eu não consigo ajeitar o código para redirecionar a página !
Prezado Rui Soares
,
Estou com um probleminha, meu pastor pediu para construir uma pagina para domínio da igreja, se vc quiser acessar é esse portaltabernaculo.com.br é um blogger.
Fiz um layout no fireworks, baseando nos site que navega.
Como tenho muitas dúvidas revolvi pesquisar na net, encontrei um tutorial seu CRIANDO SITE DINAMICO, muito bom, nesse tutorial você explica com fazer um sistema de noticia, inclusive fiz sua ideia no site da igreja.
Minha duvida é: Como desenvolver um esquema que ao cadastrar uma noticia no painel automaticamente ele exibir na pagina uma do lado da outra, tipo: na 1º linha not 1 e not 2 na 2º linha not 4 e not 5 e assim por diante. Pra você ter uma ideia ver o layout que estou desenvolvendo maniadigitalpc.com.br/trp/new_portal.php
Tem um capitulo que você disponibiliza uns arquivos extras, ferramentas de formatação de texto. Tipo negrito, tamanho e outros… Por favor, poderia disponibilizar eles.
Muito Obrigado..
Excelente Post………Obrigado a pessoas com tu que gostam de partilhar Sabedoria …….Funciona a 100%, agora só tenho de personalizar, seguindo mais algumas dicas……………THANKS AGAIN
Cara, agradeço muio pelo post, porém comigo, sempre dá o mesmo erro: "Problema no envio da mensagem. Por favor tente mais tarde.."
Até mesmo com o código original disponível para download, sem alterações (apenas no e-mail a ser recebido o contato), o erro persiste. O que fazer? Obrigado.
Muito bom o formulário. Muito obrigada por compartilhar.
Cris
Cara eu tava com um projeto em cima do prazo, mas com seu tuto eu fiz tudo rapidinho… ^^ .. vlw!!!
olá… estou testando o formulario .. mas a msg que ele retorna é esta.. :
Warning: mail(): Failed to connect to mailserver at "127.0.0.1" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:Program FilesEasyPHP-DevServer-13.1VC9datalocalwebmy portable filesenvia-email.php on line 27
na linha 27 esta o seguinte:
if (mail ($recipient, $subject, $msg, $header))
Por que o meu não está funcionando?
obs.: o e-mail de destino é dominio proprio (.com.br) não é do gmail…
tambem to com o mesmo problema
Adorei o blog, continue postando, no site Scriptcase contem algumas informações sobre.
viva
estou a criar um formulário que envia a inscrição para o email indicado.
a questão é a seguinte, é possível colocar o formulário a aparecer na caixa de correio com o mesmo aspecto que a página web? ou, em alternativa converter o formulário em PDF e enviar automáticamente por email.
Agradeço desde já a vossa atenção
Alguns erros relatados, tem a ver com SMTP, porém até agora não sei exatamente como e onde adiciona smtp = 587 , no lugar de 25 , se isto for esclarecido resolveria-se a outra metade dos problemas
Agradeço as explanações e as dicas. T+
Obrigado pelo artigo. Funciona 100%
Obrigado pelo artigo. O Script funciona 100%.
Alguem saberia como fazer a formatação para quebra de linha na caixa texto (campo Mensagem)
Se a sua mensagem for longa ele entrega todo o conteudo na primeira linha.
No mais esta perfeito…
O Site está de Parabens!!
leia isso…. e vote certo em 2014 / Diga não ao GOVERNO corrupto de Cuiaba e Mato Grosso, chega de Robalheira. Vamos mudar.
http://www.folhamax.com.br/politica/alvo-da-pf-em…
Ip: 187.63.226.185
Ola primeiramente obrigado por postar seus conhecimentos na web e disponibilizar para todos.
não sei programar em php, porem eu consigo editar pegando scripts pronto igual o seu, eu trabalho mais com flash as2 e as3.
estou com um problema eu tinha um formulario em php 5.1 porem ele parou de funcionar na uolhost, hj eu vi seu post e reformulei meu formulario para 5.2 com o seu script porem nao funcionou.
vc poderia dar uma revisao por favor? ver se tem algo errado. eu agradeço.
vou postar aqui o script do php em alguns comentarios continuos pq é um pouco grande.
Muito bom o tutorial! me ajudou muito, muito obrigado pela ajuda!!!
Parabéns pelo tutorial só tenho um problema na hora de voltar a paginá index.php
Boa tarde Amigos,
Tenho este código em php de formulário de contacto. Está a funcionar bem mas o problema é que no mail que recebe não chega os campos de nome, mail e mensagem. Alguma dica?
"Uma mensagem vinda do site !
Algum vistante mandou essa mensagem pelo site.
Nome:
Email:
Mensagem:
"
Agradeco desde já quem me puder ajudar a encontrar o erro no php
<?
$nome=$_POST['nome'];
$email=$_POST['email'];
$titulo=$_POST['titulo'];
$texto=$_POST['texto'];
$Destinatario="aquivaiseuemail";
$Titulo="$titulo";
$mensagem1="
Uma mensagem vinda do site !
Algum vistante mandou essa mensagem pelo site.
Nome: $nome
Email: $email
Mensagem: $mensagem";
mail("$Destinatario","$Titulo", "$mensagem1","From:$email");
?>