-
PHP - Fundamentos Básicos
-
Lecture 1PHP – Tutorial
-
Lecture 2PHP – Introdução
-
Lecture 3PHP – Configuração de Ambiente
-
Lecture 4PHP – Visão geral da sintaxe
-
Lecture 5PHP – Tipos de Variáveis
-
Lecture 6PHP – Tipos de Constantes
-
Lecture 7PHP – Tipos de Operadores
-
Lecture 8PHP – Tomada de Decisão
-
Lecture 9PHP – Tipos de Loop
-
Lecture 10PHP – Arrays
-
Lecture 11PHP – Strings
-
Lecture 12PHP – Conceitos Web
-
Lecture 13PHP – Métodos GET e POST
-
Lecture 14PHP – Inclusão de Arquivo
-
Lecture 15PHP – Arquivos e I/O
-
Lecture 16PHP – Funções
-
Lecture 17PHP – Cookies
-
Lecture 18PHP – Sessions
-
Lecture 19PHP – Enviando e-mails usando PHP
-
Lecture 20PHP – upload de arquivo
-
Lecture 21PHP – Padrão de Codificação
-
PHP – Métodos GET e POST
Existem duas maneiras de o cliente do navegador enviar informações ao servidor da web.
- O Método GET
- O Método POST
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.
name1=value1&name2=value2&name3=value3
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.
http://www.test.com/index.htm?name1=value1&name2=value2
- O método GET produz uma longa string que aparece nos logs do seu servidor, na caixa Location: do navegador.
- O método GET é restrito a enviar até 1024 caracteres apenas.
- Nunca use o método GET se você tiver uma senha ou outras informações confidenciais a serem enviadas ao servidor.
- GET não pode ser usado para enviar dados binários, como imagens ou documentos do Word, para o servidor.
- Os dados enviados pelo método GET podem ser acessados através da variável de ambiente QUERY_STRING.
- O PHP fornece o array associativo $ _GET para acessar todas as informações enviadas usando o método GET.
Experimente o exemplo a seguir, colocando o código-fonte no script test.php.
<?php if( $_GET["name"] || $_GET["age"] ) { echo "Welcome ". $_GET['name']. "<br />"; echo "You are ". $_GET['age']. " years old."; exit(); } ?> <html> <body> <form action = "<?php $_PHP_SELF ?>" method = "GET"> Name: <input type = "text" name = "name" /> Age: <input type = "text" name = "age" /> <input type = "submit" /> </form> </body> </html>
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.
- O método POST não possui nenhuma restrição quanto ao tamanho dos dados a serem enviados.
- O método POST pode ser usado para enviar dados ASCII e binários.
- Os dados enviados pelo método POST passam pelo cabeçalho HTTP, portanto a segurança depende do protocolo HTTP. Ao usar o HTTP seguro, você pode ter certeza de que suas informações estão seguras.
- O PHP fornece o array associativo $ _POST para acessar todas as informações enviadas usando o método POST.
Experimente o exemplo a seguir, colocando o código-fonte no script test.php.
<?php if( $_POST["name"] || $_POST["age"] ) { if (preg_match("/[^A-Za-z'-]/",$_POST['name'] )) { die ("invalid name and name should be alpha"); } echo "Welcome ". $_POST['name']. "<br />"; echo "You are ". $_POST['age']. " years old."; exit(); } ?> <html> <body> <form action = "<?php $_PHP_SELF ?>" method = "POST"> Name: <input type = "text" name = "name" /> Age: <input type = "text" name = "age" /> <input type = "submit" /> </form> </body> </html>
A variável $ _REQUEST
A variável PHP $ _REQUEST contém o conteúdo de $ _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["name"] || $_REQUEST["age"] ) { echo "Welcome ". $_REQUEST['name']. "<br />"; echo "You are ". $_REQUEST['age']. " years old."; exit(); } ?> <html> <body> <form action = "<?php $_PHP_SELF ?>" method = "POST"> Name: <input type = "text" name = "name" /> Age: <input type = "text" name = "age" /> <input type = "submit" /> </form> </body> </html>
Aqui a variável $ _PHP_SELF contém o nome do script próprio no qual está sendo chamada.