POST, GET y REQUEST en PHP

| 2013-10-15 | No hay comentarios »

Post, Get y Request son métodos predeterminados en nuestro servidor(HTTP), o sea son funciones privadas del servidor que tengas instalado y los cuales devuelven una variable en formato arreglo asociativo con llave y valor, explicado lo que son esas variable globales de PHP, centraremos nuestra atención en como ser mas practico con esas variables, las cuales son indispensables que sepamos como manejarlas por el bien nuestro, ya que son parte fundamental de nuestra aplicación o pagina web interactiva.

Cuando veamos una variable que tenga $_ significa que es una variable del servidor. Se pueden enviar parámetros a través de formularios o enlaces.

La diferencia entre POST y GET radica en la forma de enviar los datos, mientras que el método GET envía los datos usando la URL, el método POST los envía por la entrada estándar STDIO.

Ejemplo1:


<?php
//Imprimir lo que traen todas las variable globales
print_r($_REQUEST); //Imprime correctamente Mi script 1
print_r($_POST); //Imprime correctamente Mi script 2
print_r($_GET); // Imprime correctamente Mi script 1 y 2
?>
<html>
<head>
<title>Programacion.com.py - GET, POST, REQUEST</title>
</head>
<body>
<form action="" method="GET">
<h1> Mi script 1</h1>
<input type="text" name="nombre" value=""/>
<input type="submit" name="boton" value="Enviar"/>
</form>
<br />
<form action="" method="POST">
<h1> Mi script 2</h1>
<input type="text" name="nombre2" value=""/>
<input type="submit" name="boton2" value="Enviar"/>
</form>
</body>
</html>

Como recogemos los valores de GET y POST

Para recoger los valores de un formulario donde se ha usado el método POST se debe escribir:

$variable = $_POST[‘NOMBRE’];

Para recoger una variable enviada por el método GET o por medio de un enlace se hace lo siguiente:

$variable = $_GET[‘NOMBRE‘];

Para recoger ya sea GET o POST se puede utilizar:

$variable = $_REQUEST[‘NOMBRE‘];

Ejemplo2:

form.php


<?php
//form.php: uso de formularios y enlace
//Fijarte dentro del form, que la acción a realizar es enviar los parámetros a parametros.php
?>
<html>
<head>
<title>Programacion.com.py - GET, POST, REQUEST</title>
</head>
<body>
<form action="parametros.php" method="GET">
<h1> Mi script 1</h1>
<input type="text" name="nombre" value=""/>
<input type="submit" name="boton" value="Enviar"/>
</form>
<br />
<form action="parametros.php" method="POST">
<h1> Mi script 2</h1>
<input type="text" name="nombre2" value=""/>
<input type="submit" name="boton2" value="Enviar"/>
</form>
<br />
<a href="parametros.php?nombre=programacion&otroparametro=2">Test</a>
</body>
</html>

parametros.php


<?php
//parametros.php
//Si existe POST y no está vacio
if (isset($_POST["nombre2"]) && !empty($_POST["nombre2"])) {
echo $_POST['nombre2'];
}
//Si existe GET y no está vacio
if (isset($_GET["nombre"]) && !empty($_GET["nombre"])) {
echo $_GET['nombre'];
}
//Si existe REQUEST y no está vacio
if (isset($_REQUEST["nombre"]) && !empty($_REQUEST["nombre"])) {
echo $_REQUEST['nombre'];
}
//Si existe REQUEST y no está vacio
if (isset($_REQUEST["nombre2"]) && !empty($_REQUEST["nombre2"])) {
echo $_REQUEST['nombre2'];
}

//Si queremos preguntar si se presiono el boton enviar de POST
if(isset ($_POST['boton2'])){
echo "Se presiono el boton enviar";
}
?>

Los ejemplos prácticamente se explican por si solos, solamente deben de probarlos y van a poder comprender su funcionamiento muy facilmente.

Espero que les sea de utilidad este artículo.

Saludos.

Acerca del autor: Rodrigo Paszniuk

Ingeniero Informático, amante de la tecnología, la música, el ciclismo y aprender cosas nuevas.

Posts Relacionados

  • Phalcon – Framework PHP – Extensión de C
  • Manual intermedio de Yii framework (PHP)
  • Maestro-Detalle / Factura Compra en Yii – Parte II
  • Maestro-Detalle / Factura Compra en Yii – Parte I



SEGUÍNOS EN FACEBOOK


GITHUB