Como capturar dados de um formulário em PHP?
Capturar dados de um formulário é uma das funcionalidades mais fundamentais no PHP. Isso permite que os dados submetidos pelos usuários sejam processados e utilizados para diversas finalidades, como armazenamento em banco de dados, envio de e-mails e geração de relatórios.
Criando um formulário HTML básico
Para começar, precisamos de um formulário HTML para enviar os dados ao PHP:
<form method="POST" action="processar.php">
<label for="nome">Nome:</label>
<input type="text" name="nome" id="nome">
<label for="email">E-mail:</label>
<input type="email" name="email" id="email">
<button type="submit">Enviar</button>
</form>
Este formulário enviará os dados para o arquivo processar.php
utilizando o método POST
.
Capturando dados com PHP
Agora, no arquivo processar.php
, capturamos os dados enviados:
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$nome = $_POST["nome"];
$email = $_POST["email"];
echo "Nome: " . htmlspecialchars($nome) . "<br>Email: " . htmlspecialchars($email);
}
?>
Aqui, verificamos se o método de requisição é POST
e usamos htmlspecialchars()
para evitar ataques XSS, exibindo os dados de forma segura.
Capturando dados com GET
Se o formulário fosse enviado via GET
, os dados seriam capturados com $_GET
:
<?php
$nome = $_GET["nome"] ?? "";
$email = $_GET["email"] ?? "";
echo "Nome: " . htmlspecialchars($nome) . "<br>Email: " . htmlspecialchars($email);
?>
Essa abordagem é útil quando queremos visualizar os dados diretamente na URL, mas menos segura para informações sensíveis.
Quando usar GET e POST para capturar dados de formulários no PHP?
A captura de dados de formulários no PHP permite interatividade entre usuários e servidores. O uso de $_POST
é indicado para informações confidenciais, enquanto $_GET
pode ser usado para filtros e pesquisas. Além disso, validar e higienizar os dados antes do processamento evita vulnerabilidades de segurança, como ataques XSS e SQL Injection.
Algumas aplicações:
- Coleta de informações em formulários de contato
- Processamento de cadastros de usuários
- Envio de feedbacks e avaliações
- Captura de pesquisas e enquetes online
Dicas para quem está começando
- Use
$_POST
para dados confidenciais, como senhas. - Para filtros e buscas,
$_GET
é mais indicado. - Sempre sanitize os dados usando
htmlspecialchars()
para evitar ataques XSS. - Verifique se o método de requisição está correto antes de processar os dados.
- Evite expor informações sensíveis na URL ao utilizar
GET
.
Contribuições de Daniel Moreira