Foros del Web » Programando para Internet » PHP »

Recoger campos y valores de formulario

Estas en el tema de Recoger campos y valores de formulario en el foro de PHP en Foros del Web. Utilizo un script para recoger todos los $_POST de un formulario y obtener sus valores , al recogerlos , veo que también salen los campos ...
  #1 (permalink)  
Antiguo 01/03/2012, 16:35
 
Fecha de Ingreso: noviembre-2007
Mensajes: 498
Antigüedad: 16 años, 4 meses
Puntos: 20
Exclamación Recoger campos y valores de formulario

Utilizo un script para recoger todos los $_POST de un formulario y obtener sus valores , al recogerlos , veo que también salen los campos ocultos , el boton , etc

Cita:

$values=$_POST;

foreach($values as $value)
{

print $value;

}

Hay alguna forma de que no salgan estos campos como los input hidden o los submit , etc , y por otro lado como puedo recoger también el nombre de cada campo a parte de su valor que es lo que hago con este script , saludos a todos y muchas gracias
  #2 (permalink)  
Antiguo 01/03/2012, 16:39
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Recoger campos y valores de formulario

Tienes que usar un foreach así:
Código PHP:
Ver original
  1. foreach ($_POST as $name => $value) {
  2.        echo "$name => $value";
  3. }

Para brincar los nombres o hidden, tendrías que verificar el nombre y darle un continue:
Código PHP:
Ver original
  1. foreach ($_POST as $name => $value) {
  2.        if ($name == 'algunelementoquenoquiero') continue;
  3.        echo "$name => $value";
  4. }

Saludos.
  #3 (permalink)  
Antiguo 01/03/2012, 16:39
Avatar de quike88  
Fecha de Ingreso: agosto-2008
Mensajes: 471
Antigüedad: 15 años, 7 meses
Puntos: 87
Respuesta: Recoger campos y valores de formulario

Hola, para mostrar el nombre del campo sería:

Código PHP:
Ver original
  1. $values=$_POST;
  2.  
  3. foreach ($values as $key => $value) {
  4.     echo $key.' =  '.$value;
  5. }

Saludos.
  #4 (permalink)  
Antiguo 01/03/2012, 16:42
Avatar de AeroSilver  
Fecha de Ingreso: noviembre-2011
Mensajes: 55
Antigüedad: 12 años, 4 meses
Puntos: 15
Respuesta: Recoger campos y valores de formulario

Tenés que ordenar los campos, por ejemplo: Meter los hidden y button o submit al final, entonces al foreach o al for le restas por ejemplo (si tenes 1 submit) solo 1.

Código PHP:
Ver original
  1. $posts = count($_POST);
  2. $nom_posts = array_key($_POST); // Guarda en un array los nombre de los campos
  3. for($i = 0; $i <= $posts - 1; $i++)
  4. {
  5.     echo $nom_posts[$i]." = ".$_POST[$nom_posts[$i]]."<br/>";
  6. }
  #5 (permalink)  
Antiguo 01/03/2012, 16:44
 
Fecha de Ingreso: noviembre-2007
Mensajes: 498
Antigüedad: 16 años, 4 meses
Puntos: 20
Respuesta: Recoger campos y valores de formulario

Muy buenos aportes , muy agradecido , muchas gracias a todos , voy a probarlo todo , saludos !!!
  #6 (permalink)  
Antiguo 01/03/2012, 16:45
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 2 meses
Puntos: 53
Respuesta: Recoger campos y valores de formulario

si conoces los nombres de los campos que si quieres puedes usar

Código PHP:
Ver original
  1. $Nombre=$_POST['nombredelcampoquesiquieres'];
  2. $Apellido=$_POST['otronombrequerido'];
  3. print "<br>";
  4. print "Nombre: ".$Nombre;
  5. print "<br>";
  6. print "Apellido: ".$Apellido;
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #7 (permalink)  
Antiguo 01/03/2012, 17:07
Avatar de AeroSilver  
Fecha de Ingreso: noviembre-2011
Mensajes: 55
Antigüedad: 12 años, 4 meses
Puntos: 15
Respuesta: Recoger campos y valores de formulario

Cita:
Iniciado por PIRRUMAN Ver Mensaje
si conoces los nombres de los campos que si quieres puedes usar

Código PHP:
Ver original
  1. $Nombre=$_POST['nombredelcampoquesiquieres'];
  2. $Apellido=$_POST['otronombrequerido'];
  3. print "<br>";
  4. print "Nombre: ".$Nombre;
  5. print "<br>";
  6. print "Apellido: ".$Apellido;
Me ha pasado que he tenido nombres de campos dinámicos (osea, que varían por cada proyecto). Entonces una forma fácil y dinámica de extraerlos sin preocuparse del formulario que lo envía era ir averiguando sus nombre dinámicamente a travez de la función count y array_keys
  #8 (permalink)  
Antiguo 01/03/2012, 17:08
Avatar de AeroSilver  
Fecha de Ingreso: noviembre-2011
Mensajes: 55
Antigüedad: 12 años, 4 meses
Puntos: 15
Respuesta: Recoger campos y valores de formulario

Cita:
Iniciado por AeroSilver Ver Mensaje
Tenés que ordenar los campos, por ejemplo: Meter los hidden y button o submit al final, entonces al foreach o al for le restas por ejemplo (si tenes 1 submit) solo 1.

Código PHP:
Ver original
  1. $posts = count($_POST);
  2. $nom_posts = array_key($_POST); // Guarda en un array los nombre de los campos
  3. for($i = 0; $i <= $posts - 1; $i++)
  4. {
  5.     echo $nom_posts[$i]." = ".$_POST[$nom_posts[$i]]."<br/>";
  6. }
Me equivoqué. La función array_key enrealidad es array_keys
  #9 (permalink)  
Antiguo 01/03/2012, 17:24
 
Fecha de Ingreso: noviembre-2007
Mensajes: 498
Antigüedad: 16 años, 4 meses
Puntos: 20
Respuesta: Recoger campos y valores de formulario

Si justo AeroSilver , eso hice y va muy bien , muchas gracias por el aporte :)

Etiquetas: campos, formulario, recoger
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:34.