PHP – Leer todas las variables pasadas por POST

En algunas ocasiones, normalmente cuando el código no es nuestro o venimos de un formulario que no se visiona correctamente el nombre de los campos (creados por JavaScript), nos puede interesar saber qué variables se han pasado por POST. Aquí tenéis el sencillo código:

Puede utilizarse para listar las variables que se pasan, como para tratarlas:

Empecemos por lo básico. Veamos cómo leer normalmente una variable pasada por POST en el siguiente ejemplo:

1
2
// Mostramos el valor de la variable "nombre" pasada por POST.
echo $_POST["nombre"];

Una vez vemos cómo leer la variable sabiendo su nombre, lo vamos a complicar recorriendo todas las variables del POST sin saber su nombre ni la cantidad:

1
2
3
foreach($_POST as $campo => $valor){
  echo "<br />- ". $campo ." = ". $valor;
}

Como podéis ver, leemos en bucle de la variable $_POST de PHP que almacena las variables POST enviadas, y mostramos el nombre del campo y su valor. A partir de aquí podemos tratarla con condicionales:

1
2
3
4
5
6
7
8
9
foreach($_POST as $campo => $valor){
  if ($campo=='nombre'){
   echo "<br />Tu nombre es ". $valor;
  } else if ($campo=='apellidos'){
   echo "<br />Tu apellido es ". $valor;
  } else {
    echo "<br />Es otro campo: ". $campo ." = ". $valor;
  }
}

Espero que os sea de utilidad.

Más información

Artículos relacionados

PHP – Obtener la url actual De esos post cortitos pero que te sacan de un aprieto. Vamos a ver cómo podemos saber la url actual de forma sencilla: Aquí tenéis en varios form...
MySQL – Número de registros afectados en una... En ocasiones necesitamos saber cúantos registros de nuestra base de datos han sido afectados en una consulta. Un ejemplo claro sería hacer un Upd...
Ejemplos PHP: convertir string en array Veamos una función PHP muy utilizada y que nos da juego a la hora de trabajar formularios. La función es explode(). explode() Esta función relle...
PHP – Cómo crear url amigables En muchas ocasiones nos interesa que a partir de un texto que tenemos almacenado en la base de datos, el nombre del producto por ejemplo, crear un enl...

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*