Um dos métodos mais comuns para enviar dados de formulários em PHP é usando o método POST. Ele é amplamente utilizado em aplicações web para capturar informações de usuários, como login, registros, e envio de mensagens. Neste post, vou te mostrar como enviar valores de campos de formulários via POST no PHP.
O que é o método POST?
O método POST envia dados de um formulário para o servidor no corpo da requisição HTTP. Ao contrário do método GET, ele não exibe os dados na URL, o que o torna mais seguro para transmitir informações sensíveis, como senhas.
Criando o formulário HTML
O primeiro passo é criar um formulário HTML com os campos que deseja enviar. O atributo method="POST"
indica que o formulário deve ser enviado via POST.
Veja um exemplo básico:
<!DOCTYPE html>
<html lang="pt-BR">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Envio de Formulário com POST</title>
</head>
<body>
<h2>Formulário de Contato</h2>
<form action="processa_formulario.php" method="POST">
<label for="nome">Nome:</label>
<input type="text" id="nome" name="nome" required><br><br>
<label for="email">Email:</label>
<input type="email" id="email" name="email" required><br><br>
<label for="mensagem">Mensagem:</label><br>
<textarea id="mensagem" name="mensagem" required></textarea><br><br>
<input type="submit" value="Enviar">
</form>
</body>
</html>
Explicação do formulário:
action="processa_formulario.php"
: O formulário será enviado para o arquivo PHP chamadoprocessa_formulario.php
, onde os dados serão processados.method="POST"
: Especifica que os dados do formulário devem ser enviados usando o método POST.- Campos de Entrada: O formulário contém três campos: nome, email e mensagem. Eles são enviados para o PHP para processamento.
Processando os dados com PHP
Agora, vamos criar o arquivo processa_formulario.php
para capturar e processar os dados do formulário.
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// Coletar os dados do formulário usando $_POST
$nome = htmlspecialchars($_POST['nome']);
$email = htmlspecialchars($_POST['email']);
$mensagem = htmlspecialchars($_POST['mensagem']);
// Exibir os dados enviados
echo "<h2>Dados Recebidos:</h2>";
echo "Nome: " . $nome . "<br>";
echo "Email: " . $email . "<br>";
echo "Mensagem: " . nl2br($mensagem) . "<br>";
} else {
echo "Método de requisição inválido.";
}
?>
Explicação do Código PHP:
- Verificando o método de requisição: Utilizamos
$_SERVER["REQUEST_METHOD"]
para garantir que o formulário foi enviado usando o método POST. $_POST['campo']
: A superglobal$_POST
armazena os valores enviados pelos campos do formulário. Cada campo é acessado pelo nome atribuído no HTML (neste caso,'nome'
,'email'
, e'mensagem'
).- Segurança com
htmlspecialchars()
: Esta função é usada para prevenir ataques de Cross-site Scripting (XSS), convertendo caracteres especiais em entidades HTML, como<
para<
. nl2br()
: Para a mensagem de texto, usamosnl2br()
para converter quebras de linha em<br>
no HTML, garantindo que a formatação de parágrafos seja mantida.
Exemplo de Saída:
Após enviar o formulário, você verá algo assim no navegador:
Dados Recebidos:
Nome: João da Silva
Email: joao@gmail.com
Mensagem: Olá, gostaria de saber mais sobre seus serviços.
Enviando os dados para um banco de dados
Se desejar, você pode expandir esse exemplo salvando os dados em um banco de dados MySQL. Aqui está um exemplo de como fazer isso:
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$nome = htmlspecialchars($_POST['nome']);
$email = htmlspecialchars($_POST['email']);
$mensagem = htmlspecialchars($_POST['mensagem']);
// Conectar ao banco de dados
$conexao = new mysqli('localhost', 'usuario', 'senha', 'banco');
// Verificar a conexão
if ($conexao->connect_error) {
die("Conexão falhou: " . $conexao->connect_error);
}
// Preparar e executar a inserção no banco
$sql = "INSERT INTO contatos (nome, email, mensagem) VALUES ('$nome', '$email', '$mensagem')";
if ($conexao->query($sql) === TRUE) {
echo "Dados salvos com sucesso!";
} else {
echo "Erro ao salvar: " . $conexao->error;
}
// Fechar a conexão
$conexao->close();
}
?>
O método POST é ideal para enviar dados de formulários em PHP de forma segura e eficiente. Além disso, com o uso de $_POST
, você pode facilmente capturar as informações enviadas e processá-las, seja exibindo os dados ou salvando-os em um banco de dados.
Então conheça o curso online que já ajudou milhares de pessoas a aprender a programar e desenvolver seus próprios projetos do ZERO e usando orientação a objetos de uma forma fácil de entender.
CLIQUE NA IMAGEM ABAIXO E SAIBA MAIS:
Dúvidas ou sugestões sobre como enviar valores de campos de formulários via POST no PHP? Deixem nos comentários! Para mais dicas, acesse o nosso canal no YouTube:
https://youtube.com/criandobits
Quer receber GRÁTIS o e-book "Como Formatar um Computador em 5 Minutos"?
Sobre o Autor
0 Comentários