jueves, 5 de noviembre de 2009

$_REQUEST, $_POST o $_GET

Hola amigos, tras un largo tiempo sin escribir me dispongo a compartir ciertas experiencias con vosotros.

En el mundo del envío y recepción de datos existen una serie de normas no escritas sobre qué método usar.

Para empezar haré una breve descripción sobre los métodos de envío y recepción de datos. Como bien sabréis necesitaremos un formulario HTML para enviar los datos. En la etiqueta <form> será dónde definiremos la propiedad method que podrá tener los siguientes valores:

  • post: Envía ocultos los datos

  • get: Envía los datos en la URL


Bien además de saber estas pequeñas diferencias es básico recordar que todo lo que hagamos en la red estará sujeto a posibles ataques, por lo tanto considero fundamental diferenciar en qué tipo de operaciones podemos usar get y post.

Post:

  1. Para las operaciones de modificación de registros de una Base de datos (Insert, Delete y Update) .

  2. Para formularios de Login.

  3. etc.


Get:

  1. Consultas  (Select)

  2. etc.


Por otro lado tenemos la opción Request. Esta opción es sin duda la más interesante cuando tenemos que recojer datos de otras páginas en las que no sabemos cuál es el método de envío.

En definitiva Request no necesita saber de que manera se envian los datos. El hecho de usar Request puede provocar vulnerabilidades y fallos de seguridad.

A continuación os voy a poner un ejemplo de cada:




GET



formulario.html

<form action="procesar.php" method="get">
<input name="variable" type="text"/>
<input type="submit" value="enviar"/>
</form>


procesar.php

<?php
$var = $_GET['variable1']
;
echo $var;
?>



POST



formulario.html

<form action="procesar.php" method="post">
<input name="variable" type="text"/>
<input type="submit" value="enviar"/>
</form>


procesar.php

<?php
$var = $_POST['variable1']
;
echo $var;
?>



REQUEST



formulario.html

<form action="procesar.php" method="post">
<input name="variable" type="text"/>
<input type="submit" value="enviar"/>
</form>



<form action="procesar.php" method="get">
<input name="variable" type="text"/>
<input type="submit" value="enviar"/>
</form>



procesar.php

<?php
$var = $_REQUEST['variable1']
;
echo $var;
?>


Escuchando...   Angelic Upstarts - Solidarity

[kml_flashembed movie="http://www.youtube.com/v/1rJfv0zVnwU" width="425" height="350" wmode="transparent" /]

No hay comentarios:

Publicar un comentario