Skip to content

Tips php: Obteniendo las variables “POST” con la función “Extract”

octubre 21, 2010

En este nuevo artículo he decido publicar un tips que me ha servido de mil maravillas. Cuando iniciamos a programar de php se carece de conocimiento de funciones que recurrentemente necesitamos y que terminamos programando de nuevo (a mano como se dice) perdiendo mucho tiempo valioso que bien pudiéramos utilizar para otras cosas, te suena conocido ???

Pues yo creo que al 99% de programadores cuando iniciamos nos sucede lo mismo, pensando entonces en esa situación he decido redactar este articulo y de echo he abierto en categorías una nueva que se llame Tip’s.

La función en cuestión que nos facilitara la vida a la hora de programar en php  y obtener datos desde un formulario pasado de otra página, se llama “extract”, recuerdo cuantas veces he necesitado leer un montón de variables lanzadas por un formulario y lo tedioso, cansado que resulta “cachar” cada una con el “$_POST”.

También resulta muy provechoso cuando tenemos que “juntar”, “concatenar” todas esos datos en una sola variable, pensar en eso, es, “recoger”, “cachar” todas los datos que vienen del formulario uno por uno (y me han tocado formularios con mas de 40 datos ) mediante la asignación de $_POST a una variable local y luego ir “concatenándola” con el punto, que pesado es esa tarea al programar en php y no utilizar la función “extract”.

Pues bien, déjame decirte que cuando aprendí esto me que con el ojo cuadrado y espero que a tí te sea de tanta utilidad como a mi. Te explico con un ejemplo, en el que vamos a programar en html un formulario y a programar en php el script que va a procesar la información del formualario.

Primero: Creamos un formulario con los siguientes campos, (abajo dejo el código para que los puedas copiar) y lo guardamos con el nombre: “formulario.html”:

  <html>
<head>
<title>Probando Extract</title>
</head>

<body>
<h1><strong>Formulario ejemplo !!!</strong></h1>
  <form action=”procesa.php” method=”post” name=”datos”>
    Nombre:<input name=”Nombre” type=”text” id=”nombre” value=”” /><br>
    Apellido Paterno:<input type=”text” name=”Paterno” id=”ap_paterno” /><br>
    Apellido Materno:<input type=”text” name=”Materno” id=”ap_materno” /><br>
    Sexo:<br>
      <input type=”radio” name=”sexo” id=”Masculino” value=”Masculino” />Masculino<br>
      <input type=”radio” name=”sexo” id=”Femenino” value=”Femenino” />Femenino<br>
      <input type=”submit” name=”ok” id=”ok” value=”Clasico” />
      <input type=”submit” name=”ok” id=”ok” value=”Extract” />
  </form>
</body>
</html>

Este código genera el resultado que muestro en la siguiente imagen:

 

Segundo: Ahora abrimos un archivo nuevo y le anotamos el siguiente código (es el archivo php que va a procesar la información enviada por el formulario) y lo llamamos: “procesa.php”:

<?php
/*Este es para verificar en cual
boton se le dio click */
if ($_POST[‘ok’] == “Clasico”){
/* Luego en el modo clasico obtenemos cada
  de los valores $_POST por separado */
                $nombre = $_POST[‘Nombre’];
                $ap_paterno = $_POST[‘Paterno’];
                $ap_materno = $_POST[‘Materno’];
                $sexo = $_POST[‘sexo’];
/* Luego los concatenamos con las nuevas variables */
                $concatenamos = “Nombre ->”.$nombre.”<br>Paterno ->”.
                                $ap_paterno.”<br>Materno ->”.$ap_materno.
                                                                              “<br>Sexo ->”.$sexo;
/* Aqui imprimimos el resultado */
                echo “<font color=’#FF0000′>”.$concatenamos.”</font><br>”.
                               “NOTA: este es el modo cl&aacute;sico”;
}else{
/* aqui utilizamos el metodo recomendado utilizando la funcion
extract */          
                extract ($_POST);
/* inicializamos una variable vacia que contendra los datos */
                $concatenamos = ”;
/* Luego para cada campo y valor $_POST realizamos lo siguiente */
                foreach ($_POST as $campo => $valor){
                /* en la variable $concatenamos juntamos el campo y su valor */
                                               $concatenamos .= “$campo -> $valor<br>”;
                }
               

/* Aqui imprimimos el resultado */
               echo “<font color=’#FF0000′>”.$concatenamos.”</font><br>”.
                               “NOTA: este este es con el tips :)”;
}
?>

 A continuación te dejo una imagen del resultado que muestra el código cuando le damos click en “Clásico”:

Y ahora cuando le damos click en “Extract”:

 

Espero primero que nada te haya servido y gustado, pero para entenderlo bien es necesario que realices el ejemplo y veas como funciona, así que no pierdas tiempo y a programar en php, realiza el ejemplo y de aquí en adelante ya sabrás que hacer con los formularios grandes, largos y tediosos. Antes de que te vayas te invito a que me dejes tus comentarios, me servirán para publicar mas cosas de interés.

Gracias, tu amigo
Salvado López

Anuncios

From → inicial, Tips

5 comentarios
  1. developer permalink

    muy bueno el tip! y lo mejor de todo es que esta facil de comprender…

    espero proximamente aplicarlo! mientras tanto se va para mi coleccion de tips

    • Que bueno que haya gustado, de echo ayuda a realizar una programación muy practica, aunque no estaría mal que compartieras tus demás tips con nosotros, 😉

  2. Brenda permalink

    Excelente aporte, unicamente una observación en la parte
    $concatenamos = ”;
    le hace falta un cierre de comillas para que funcione, sino marca un pequeño error de sintaxis.
    $concatenamos = “”;
    Gracias en verdad fue de mucha ayuda.

Trackbacks & Pingbacks

  1. Los errores más comunes de las páginas webs corporativas | El Blog de Publícitis

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: