Este trabalho não tem fins lucrativos. Ao dar cursos, palestras, escrever monografias e desenvolver quaisquer atividades com base neste tutorial, por favor: lembre-se de incluir os créditos de autoria e citar a fonte.
Obrigada! :-)
<FORM ACTION="mailto:seu_email" METHOD="POST" ENCTYPE="text/plain">
Nome: <INPUT TYPE="TEXT" NAME="Nome"><br>
<TEXTAREA COLS="35" ROWS="5" NAME="comentario"> Deixe seu comentário </TEXTAREA>
<P><input type="submit" value="Envia mensagem">
<input type="reset" value="Apaga tudo!">
</FORM>
Quando se submete este formulário, o ´mailto:´ do campo ACTION executa o programa de e-mail do usuário (por isso o formulário não irá funcionar se o usuário não estiver usando um computador com programa de e-mail corretamente configurado).
Na janela de e-mail que se abrir, aparecerão os dados entrados nos campos do formulário. No Internet Explorer aparece um alerta sobre o envio do e-mail:
- é preciso enviar essa mensagem de e-mail para que os dados sejam enviados.
Assim, não há necessidade de um CGI script para submeter o formulário. Porém, usar o ´mailto:´ em um formulário só é interessante se o objetivo do formulário é somente enviar o e-mail.
É possível ver que essa formatação tem alguns inconvenientes:
1- Só irá funcionar se o usuário tiver um programa de e-mail definido
como padrão;
2- não oferece retorno, isto é: por si só não dá nenhuma pista para o
usuário se o formulário foi realmente enviado ou não (no Netscape é aberta a janelinha de e-mail, o que faz com que o usuário veja os
dados que o formulário está enviando).
Um exemplo de formulário com envio de e-mail aqui no tutorial é a página de contato, por meio da qual as dúvidas são enviadas para mim. O script associado a essa página de contato é em PHP e tem o seguinte "jeitão" básico:
<?php// pega conteúdo entrado pelo formulário$nome = $HTTP_POST_VARS[nome];
$email = $HTTP_POST_VARS [email];
$duvida = $HTTP_POST_VARS [duvida];
$pergunta = $HTTP_POST_VARS [pergunta];// monta mensagens de resposta$resp ="Seu e-mail com
o assunto <b>«".$duvida."»</b>
foi encaminhado com sucesso para a autora do tutorial e a resposta
será enviada para o endereço ".$email.".
<p>Devido ao número de mensagens recebidas, o atendimento
poderá demorar alguns dias.<br><br> Agradecendo pela
visita,<br>Maria Alice.</p>";$retorno = "Seu e-mail
com o assunto «".$duvida."»
foi encaminhado com sucesso.\n\nDevido ao número de mensagens recebidas,
o atendimento poderá demorar alguns dias.\n\nObrigada pela visita!\nMaria
Alice\n----------------\nATENÇÃO: Não responda a esta mensagem!\nEste
e-mail foi gerado automaticamente pela página de contato do\nTutorial
HTML do ICMC-USP.// envio da pergunta e da resposta
automáticaif (!empty($nome))
$de = $nome."
<".$email.">";
else
$de
= $email;
//
e-mail com a pergunta, enviado para mim:
mail
($meu_email,"::".$duvida."::",$pergunta,"From:
$de");
//
resposta automática para quem enviou a dúvida:
mail
("$de","Obrigada pelo
contato!",$retorno,"From:
$meu_email");
// impressão de mensagem na página
de resposta, após envio dos e-mails
echo
"<p class=conteudo>".$resp."</p>";
?>
Esse script fica num arquivo com extensão .php, que é declarado no ACTION do formulário. Os nomes das variáveis de entrada (lidas por meio de $HTTP_POST_VARS) são os mesmos nomes indicados pelo atribudo NAME nos campos do formulário. Veja detalhes em CGI Scripts usando PHP.
Se você está hospedando seu site em um provedor gratuito, leia esta resposta.