Métodos de envío de datos

Categories:

En la entrada de formularios vimos que uno de los atributos de la etiqueta form es method.
Este atributo se refiere al método que va a utilizar el formulario para enviar los datos, los valores pueden ser GET o POST.

¿Cuándo es conveniente utilizar cada uno de los métodos?

GET
Se utiliza para obtener datos del servidor.
El uso principal es para realizar consultas – SELECT -.
Los valores del formulario son visibles en el URL con el siguiente formato:

?nombre1=valor1&nombre2=valor2

?: Caracter que delimita el nombre del primer parámetro.
&: Caracter que delimita el nombre del segundo parámetro en adelante.

nombre1: El valor que tiene el campo en el atributo name.
valor1: El valor que tiene el campo al momento de ser enviado.

Se puede agregar a favoritos – bookmarks – porque el comportamiento debería ser el mismo – no debería haber efectos secundarios porque no debería utilizarse para modificar la base de datos – .

<?php
/*
 Si el formulario utiliza el método GET en el atributo method y tiene un campo con el valor 'parametro' en el atributo name: 
<input type="text" name="parametro">
En PHP podemos obtener el valor que se introdujo con :
*/

$_GET['parametro'];
?>

POST
Se utiliza para enviar datos al servidor.
Generalmente se utiliza para realizar acciones que modifican la base de datos – insertar, actualizar, eliminar – INSERT, UPDATE, DELETE – .

Al enviar un formulario con el método post los valores son parte del cuerpo del mensaje, es decir, no son visibles en el URL.

No se puede agregar a favoritos porque este método generalmente es utilizado para realizar alguna modificación a la base de datos – si pudiera agregar a favoritos se correría el riesgo de aplicar la modificación en cada ocasión que se visitara ese URL – .

<?php
/*
 Si el formulario utiliza el método POST en el atributo method y tiene un campo con el valor 'parametro' en el atributo name: 
<input type="text" name="parametro">
En PHP podemos obtener el valor que se introdujo con :
*/

$_POST['parametro'];
?>

Otros métodos

Existen otros métodos de envío de datos como patch, put, delete, para que el funcionamiento sea el deseado lo más recomendable es utilizar JavaScript – AJAX – para envío y recepción de datos si es hacia un API sobre la cuál no tenemos control. Si estamos haciendo una aplicación o API podemos utilizar el acercamiento que utiliza Rails que es utilizar un campo oculto con el nombre _method y utilizar el método POST en el formulario.