Envio de formulários com o PHP


Hoje aprenderemos a como enviar formulários para um ou mais emails com o PHP.

A tarefa é simples e de fácil compreensão, onde consiste em capturar os dados do formulário e os enviar através da função mail do PHP. Para que tudo funcione corretamente, a função mail deve estar ativada no seu servidor de hospedagem. Hoje em dia, creio eu, que essa função dificilmente se encontrará desativada. Por via das dúvidas, faça um teste ao final desse tutorial com os arquivos hospedados, ou então entre em contato com o suporte da hospedagem e obtenha essa informação.

Inicialmente nós faremos uso do seguinte formulário em XHTML:


<form method="post" action="enviar.php">

Nome:

    <input type="text" name="nome" /> < br/>

Email:

    <input type="text" name="email" /> < br/>

Mensagem: < br/>

    <textarea name="mensagem"> </textarea> < br/> 

    <input type="submit" value="Enviar" />

</form>
 

Note que é um formulário simples, de método post que ao ser enviado será tratado pelo arquivo enviar.php, que criaremos daqui a pouco.

Salve o formulário com o nome que preferir.

Agora crie um novo arquivo. Ele se chamará enviar.php e deve estar na mesma pasta que o arquivo do formulário.

Vamos declarar três variáveis e dentro delas iremos armazenar os valores dos dados do formulário. Veja:


$nome = $_POST['nome'];

$email = $_POST['email'];

$mensagem = $_POST['mensagem'];

Agora iremos declarar mais três variáveis: $destinatario, que diz para qual email deverá ser enviado, $assunto, que define o assunto na header do email, e $remetente, que armazenará o valor da variável $nome e da variável $email, podendo assim, identificar o nome de quem enviou e o seu email.

$destinatario = 'seuemail@dominio.com';
$assunto = 'Mensagens dos usuarios';
$remetente = "$nome"." $email";

Abaixo temos a função mail e seus parâmetros dentro de uma estrutura condicional IF, onde se o email for enviado, a mensagem de sucesso é mostrada, caso contrário, será uma mensagem de erro.
Os valores dos parâmetros mencionados, são as variáveis que definimos agora a pouco.

if(mail("$destinatario","$assunto","$mensagem","From: $remetente")){
    echo 'Email enviado com sucesso!';
}       else{
            echo 'Ocorreu um erro durante o envio, por favor, tente novamente!';
        }

Para enviar os dados do formulário para mais de um email também é muito fácil! Basta colocar uma vírgula para separar cada novo email na variável $destinatario. Veja:

$destinatario = 'seuemail@dominio.com, outroemail@dominio.com';

Chegamos ao final do nosso tutorial. Logo a baixo estão os links do código fonte para o arquivo XHTML e PHP. Qualquer dúvida é só perguntar. Caso tenham alguma sugestão ou crítica, também será muito bem vinda!

Nota: Em outra oportunidade eu abordarei a função mail() de forma mais completa, mas o principal já está ai.

Abraços e até a próxima!🙂

Código completo para o arquivo XHTML: http://pastebin.com/f7bdda5d2

Código completo para o arquivo PHP: http://pastebin.com/f1f8b1bc

Um comentário sobre “Envio de formulários com o PHP

  1. daltonmenezes, segui seu tutorial, copiei e colei tudo direitinho, mas sempre da erro… Tem algum problema por que estou hospedando em localhost utilizo o EasyPHP 5.3.6.0… Aguardo sua resposta!

    Curtir

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s