devemos usar o método GET para enviar dados de um formulário HTML, ou o método POST em vez disso?
GET and POST access methods are defined in the HTTP protocol and included in the HTML specification.
a escolha do método depende de como os dados são recebidos, o tamanho e a natureza dos dados.
o método GET adiciona dados ao URL
na forma, é especificado da seguinte forma:
<form method="get" action="page.html"></form>
com este método, os dados da forma serão codificados em um URL., Ele é composto pelo nome da página ou script a ser carregado, com os dados do formulário embalados em uma string.
os dados são separados do endereço da página pelo ? code and between them by the & code.
assim, se você enviar para a página.html, os valores “color blue” e “shape rectângulo”, a compilação de URL pelo navegador será:
https://www.xul.fr/page.html?color=blue&shape=rectangle
a especificação HTML 4 pede para o uso de GET quando o pedido não causa qualquer alteração nos dados, em seguida, para fazer uma única leitura. (Referência). os dados do formulário devem ser apenas ASCII., O tamanho de uma URL é limitado a pouco mais de 2.000 caracteres, incluindo códigos de fuga.
Note que quando o usuário usa o botão de Trás, os pedidos de GET são re-executados.
o método POST não tem limite de tamanho
na forma, é especificado do seguinte modo:
<form method="post" action="page.php"></form>
este método envia um cabeçalho e uma mensagem corporal para o servidor. O corpo geralmente consiste de dados inseridos nos campos do formulário pelo Usuário.
os dados do formulário não aparecem no URL., Assim, não é possível recuperar os dados diretamente no JavaScript, você deve adicionar algum código PHP na página:
<?php $color = $_POST; $shape = $_POST;?>... HTML code ...
no entanto, Você pode atribuir os dados obtidos através de PHP de um script JavaScript:
<script> var color = <?php echo $color;?>; var shape = <?php echo $shape;?>;</script>
Conclusão
O método GET é o valor padrão. É usá-lo a menos que você não quer que os parâmetros sejam adicionados à URL. Ele permite recuperar dados passados para a página com código JavaScript.,
O método POST é essencial para códigos não-ASCII, para grandes dados, e é recomendado alterar os dados no servidor e para dados sensíveis, como explicado pelo W3C..
Ao usar POST, você deve integrar PHP (ou outra língua) na página onde os dados serão usados.
Ver também
- enviar e receber os dados do formulário.
- GET vs. POST em Ajax.