[Php-avanzado] GET vs POST

Leonardo Tadei - Pegasus Tech Supply leonardot en pegasusnet.com.ar
Jue Sep 25 00:38:10 ART 2008


Hola Lucas,

El mié, 24-09-2008 a las 23:15 -0300, unes pacio escribió:
>                     Esto es por la pregunta de Leo del dia de hoy,
> ¿cual es la ventaja de usar el metodo get en un formulario con
> respecto de post?
>                     No se me ocurre mucho pero me parece que aveces es
> combeniente usarlo (todo depende de la imaginacion y gusto del
> artista), por ejemplo cuando queremos guardar algun dato temporal en
> el navegador del cliente, (y ya se que tambien se puede hacer con las
> cookies, solo es otro metodo), con post tambien se puede pero requiere
> mas html y lo veo poco eficiente, ademas si recargamos la pagina o se
> nos cierra el navegador corremos riesgo de perder la informacion y que
> nos aparesca el molesto cartel de que si queremos reenviar la
> informacion, otra gran utilidad es que se pueden utilizar links para
> enviar informacion a un formulario, y combinar el formulario con
> opciones al estilo de botones, que en realidad son links, con post
> seria mas complicado de hacer.
>                     Bueno, si no queda claro, si alguien no esta de
> acuerdo o se le ocurre alguna otra ventaja del metodo get, ya sabe que
> hacer.

	Esto es más o menos lo que nos contaste en clase.
	A tu análisis le falta la parte desventajosa y la empatada.
	Por ejemplo es lo mismo a nivel de eficiencia usar GET o POST. De hecho
POST es un poco más eficiente porque tiene topes más altos de
transmisión. Si se cierra el navegador, en ambos casos se pierde el "por
dónde iba". 
	Lo del molesto cartel de "se volverán a enviar datos" es discutible,
porque a veces eso te salva de volverlos a enviarlos son querer. Además
hay técnicas para evitarlo que se usan para evitar dobles inputs.
	Para enviar información a un formulario, con exactamente equivalentes.
	Usando CSS, no deberías necesitar enviar likns con imágenes para enviar
cosas GET, ya que un botón decorado o de tipo image hace esto y sigue
siendo un botón. Visto así, es más facil de hacer con POST que con GET
como decís, porque no requiere armar una larga cadena de parámetros.

	Hasta acá lo que es más o menos lo mismo.

	Una desventaja grande, muy grande de enviar por GET, es que "ensucia"
los URI y los hace muy difíciles de leer, lo que veremos hacia al final
del curso da pie a problemas de seguridad del tipo phishing.

	Es un tema muy interesante para discutir, y como bien da a entender
Lucas, no hay cosas bien ni cosas mal, sino situaciones a analizar en
dónde algunas tienen más ventajas que otras.

	Qué opina el resto?

-- 
Leonardo Tadei
leonardot en pegasusnet.com.ar
http://blog.pegasusnet.com.ar
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key



Más información sobre la lista de distribución Php-avanzado