PHP – Métodos GET e POST

Existem duas maneiras pelas quais o cliente do navegador pode enviar informações ao servidor da web.

Antes de o navegador enviar as informações, ele as codifica usando um esquema chamado codificação de URL. Neste esquema, os pares nome/valor são unidos com sinais de igual e diferentes pares são separados pelo “e” comercial.

nome1=valor1&nome2=valor2&nome3=valor3

Os espaços são removidos e substituídos pelo caractere + e quaisquer outros caracteres não alfanuméricos são substituídos por valores hexadecimais.  Depois que as informações são codificadas, elas são enviadas ao servidor.

O Método GET

O método GET envia as informações codificadas do usuário anexadas à solicitação de página. A página e as informações codificadas são separadas por personagem.

https://www.tecforest.com.br/teste.php?nome1=valor1&nome2=valor2

Experimente o exemplo a seguir, colocando o código-fonte no script teste.php.

<?php
if($_REQUEST["nome"] || $_REQUEST["idade"]) {
echo "Bem-vindo(a) ".$_REQUEST['nome']."<br />";
echo "Idade ".$_REQUEST['idade']." anos.";

exit();
}
?>

<html>
<body>

<form action="<?php $_PHP_SELF ?>" method="POST">
Nome: <input type="text" name="nome" />
Idade: <input type="text" name="idade" />
<input type="submit" />
</form>

</body>
</html>

Isso produzirá o seguinte resultado:

O Método POST

O método POST transfere informações por meio de cabeçalhos HTTP. As informações são codificadas conforme descrito no caso do método GET e colocadas em um cabeçalho chamado QUERY_STRING.

Experimente o exemplo a seguir, colocando o código-fonte no script test.php.

<?php
if($_POST["nome"] || $_POST["idade"]) {
if(preg_match("/[^A-Za-z'-]/", $_POST['nome'])) {
die ("invalid name and name should be alpha");
}
echo "Bem-vindo". $_POST['nome']. "<br />";
echo "Você tem ". $_POST['idade']. " anos.";

exit();
}
?>
<html>
<body>

<form action="<?php $_PHP_SELF ?>" method="POST">
Nome: <input type="text" name="nome" />
Idade: <input type="text" name="idade" />
<input type="submit" />
</form>

</body>
</html>

Isso produzirá o seguinte resultado:

A variável $_REQUEST

A variável PHP $_REQUEST contém o conteúdo da $_GET, $_POST e $_COOKIE. Discutiremos a variável $_COOKIE quando explicarmos sobre cookies.

A variável PHP $_REQUEST pode ser usada para obter o resultado dos dados do formulário enviados com os métodos GET e POST.

Experimente o exemplo a seguir, colocando o código-fonte no script test.php.

<?php
   if($_REQUEST["nome"] || $_REQUEST["idade"]) {
      echo "Bem-vindo(a) ".$_REQUEST['nome']."<br />";
      echo "Idade ".$_REQUEST['idade']." anos.";
exit(); } ?> <html> <body> <form action="<?php $_PHP_SELF ?>" method="POST"> Nome: <input type="text" name="nome" /> Idade: <input type="text" name="idade" /> <input type="submit" /> </form> </body> </html>

Aqui a variável $_PHP_SELF contém o nome do self script no qual está sendo chamada.

Isso produzirá o seguinte resultado:

Sair da versão mobile