Aprenda a receber dados de Formulário com PHP
Autor: Denecir da Silva Pereira | Publicado: 2010-09-27T07:33:00-07:00

Existem três arrays associativos que podemos usar para receber dados de Formulários HTML em PHP. São eles: $_GET, $_POST e $_REQUEST. Os dois primeiros são usados de acordo com o método de envio de informações definido para o formulário. Já o array $_REQUEST recupera dados tanto de formulários que utilizam GET quanto POST.


Para exemplificar, crie uma pasta chamada forms na raiz do seu Ambiente de Desenvolvimento. No meu caso, como estou usando o Wamp, meu diretório raiz é C:\wamp\www.

Agora, abra um Editor de Textos simples (Bloco de Notas por exemplo) e digite o código abaixo:
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Recebendo dados do Formulário&lt;/title&gt;&lt;/head&gt;&lt;body&gt;
&lt;form method="post" action="receber-form.php"&gt;
Digite seu nome:&lt;br /&gt;
&lt;input type="text" name="nome" /&gt;
&lt;input type="submit" value="Enviar" /&gt; 
&lt;/form&gt;&lt;/body&gt;&lt;/html&gt;Salve o arquivo com o nome form-teste.html dentro da pasta forms.

Repare que criamos um formulário que utiliza o método POST e que enviará dados para o arquivo receber-form.php que criaremos no mesmo diretório. O formulário possui apenas uma Caixa de Texto e um Botão de Envio. Observe também que o valor do parâmetro name da Caixa de Texto é nome.

Pra finalizar, abra um novo documento no Editor de Textos e digite o código abaixo:
&lt;?php
$nome = $_POST['nome'];
echo "Olá " . $nome;
?&gt;Salve o arquivo com o nome receber-form.php na pasta forms.

Entenda que, na linha 2, criamos uma variável com o nome $nome (poderia ser outro nome) que recebe o texto digitado na Caixa de Textos do formulário. Isso porque utilizamos $_POST['nome'] onde a chave nome corresponde ao parâmetro name da Caixa de Texto do formulário.

É bom lembrar que se substituirmos a segunda linha do Arquivo PHP por:
$nome = $_REQUEST['nome'];Teríamos o mesmo resultado.

Por fim, abra o navegador acesse o endereço: http://localhost/forms/form-teste.html

Observe o resultado:

Após preencher o nome e clicar em Enviar:

Obviamente que esse é um exemplo simples, apenas para mostrar como o PHP recebe dados de um Formulário. Em breve, explicarei como gravar esses dados em um Arquivo de Textos, em Bancos de Dados e até como enviar por E-mail.

Nota: Existe uma variável no Arquivo de Configuração do PHP (php.ini) chamada register_globals, essa variável pode receber dois valores: On e Off (Off é o padrão por segurança). Quando o valor está definido como On, nós não precisamos utilizar os arrays associativos $_POST, $_GET ou $_REQUEST para receber dados de formulários. Isso quer dizer que, caso o valor dessa variável esteja definido como On, o Código PHP do exemplo acima também funcionaria se tirasse-mos a segunda linha conforme abaixo:

&lt;?php
echo "Olá " . $nome;
?&gt;Não sabe como alterar o Arquivo de Configuração do PHP? Expliquei isso no post: Conheça todas as formas de Abrir e Fechar Blocos de Código PHP.


Leia mais:
Não tem o ambiente de desenvolvimento instalado? Instale o Apache, o PHP e o MySQL com o Wamp;
Não sabe nada de PHP? Comece com Introdução ao PHP;
Não conhece nem HTML? Comece com Introdução ao HTML;