Formulários são utilizados na web para envio de informações do cliente para o servidor. Para tal, no lado do cliente geralmente teremos um navegador, como o Google Chrome. Já no lado do servidor, utilizamos mecanismos nativos da linguagem de programação escolhida para capturar as informações enviadas pelo cliente. No PHP, essas informações são obtidas através das variáveis globais $_GET e $_POST.

Características do GET Características do GET Características do POST Quando usar o GET Quando usar o POST
#PraCegoVer - Transcrição dos Slides No GET enviamos o formulário e os dados aparecem na URL - campo nome: Gregory, email - teste@teste.com.br = URL: localhost/index.php?nome=gregory&email=teste@teste.com.br
Além disso a URL está limitada a uma quantidade de caracteres (cerca de 2000). Então não é seguro enviar um texto muito longo através do método GET
Já no POST enviamos o formulário e os dados não aparecem na URL
Geralmente usamos GET quando não tem problema expor os dados enviados pelo usuário. Por exemplo, URL localhost/index.php?pagina=1
Já POST usamos quando há dados sigilosos no formulário, que devem ser conhecidas apenas pelo usuário. Por exemplo, número do cartão de crédito: 0000 0000 0000 0000

$_GET

Formulários enviados pelo método GET passam o valor de seus campos através de parâmetros inseridos na URL. Os valores desses parâmetros, por sua vez, podem ser acessados através da variável $_GET. $_GET é um array nativo, já disponível no ambiente de desenvolvimento PHP, cujas chaves são associadas aos nomes dos parâmetros presentes na URL.

Envio por GET
Figura 1. Envio por GET

No exemplo a seguir temos um formulário com os campos nome e e-mail. Ao ser enviado, note que o valor de seus campos passa a estar presente na URL para qual o formulário foi enviado. Perceba também que cada valor estará associado a um parâmetro de mesmo nome do campo de origem no formulário. Conforme o script abaixo, faremos a captura desses dados e exibiremos na tela seus valores:


  01. <?php
  02. $nome = isset($_GET["nome"]) ? $_GET["nome"] : "";
  03. $email = isset($_GET["email"]) ? $_GET["email"] : "";
  04. 
  05. echo "Nome: ".$nome."<br>";
  06. echo "Email: ".$email."<br><br>";
  07. ?>
  08. <form method="get">
  09.   Nome: <input type="text" name="nome" 
           value="<?=$nome?>"><br><br>
  10.   Email: <input type="text" name="email" 
           value="<?=$email?>"><br><br>
  11.   <input type="submit" name="submit" value="Enviar">
  12. </form>
  

RUN
Fim do trecho gratuito • continue abaixo
CONTEÚDO EXCLUSIVO

Desbloqueie toda a DevMedia

  • +2000 artigos e vídeos
  • +40 trilhas sobre Front-end, Back-end, IA e muito mais
  • +5000 exercícios práticos
  • Mentorias ao vivo individuais
até 50% OFF
A partir de
R$ 69 /mês
Assinar agora