Foros del Web » Programando para Internet » PHP »

Recibir via $_POST concatenada a un indice

Estas en el tema de Recibir via $_POST concatenada a un indice en el foro de PHP en Foros del Web. Buen día gente, estoy haciendo una pagina que permite ordenar por parte del administrador los elementos de un menu (los elementos de este menú no ...
  #1 (permalink)  
Antiguo 12/05/2011, 08:16
 
Fecha de Ingreso: julio-2009
Ubicación: Montevideo, UY
Mensajes: 129
Antigüedad: 15 años, 3 meses
Puntos: 1
Pregunta Recibir via $_POST concatenada a un indice

Buen día gente, estoy haciendo una pagina que permite ordenar por parte del administrador los elementos de un menu (los elementos de este menú no son un numero fijo ya que se pueden agregar o quitar).
Para eso hice un formulario que trae el nombre del boton y al lado un campo (imput type='text') con el valor numerico de orden actual, para poder editarlo. Hasta aqui todo bien.
El problema está en que no sé como recibir via POST la variable para cada uno de esos input.

Este es el input que manda el nuevo valor:
<input type='text' value='".$reg_tabla['orden']."' name='lugar".$i."' size='3'>

Esto esta dentro de un WHILE que hace acceso a la base de datos y el valor de $i se incrementa en cada pasada.

Y luego se que debo actualizar la base de datos asi:

Código PHP:
for ($j=1$j<=$i$j++) {                            
   
$lugar $_POST[lugar].$j;
   
$consulta "UPDATE categoria SET orden = '$lugar' WHERE orden='$id'";

Lo que supongo que está mal es el "$_POST[lugar].$j;"
No se como puedo decir que quiero hacer POST en la variable $lugar con indice $j

Muchas gracias por su ayuda!
  #2 (permalink)  
Antiguo 12/05/2011, 08:26
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 7 meses
Puntos: 406
Respuesta: Recibir via $_POST concatenada a un indice

En primera siempre SIEMPRE se coloca el nombre de la variable entre comillas con $_GET, $_POST. $_SESSION y $_COOKIE

Ahora, el nombre de los campos seria lugar1, lugar2, lugar3, etc, entonses lo que debes hacer es incrementar el nombre de la variable no su valor, lo que estas intentando hacer es agregarle un numero incrementado al valor de la variable "lugar"...

Código PHP:
Ver original
  1. //Supongamos que si existe el campo "lugar" y que su valor es "hola mundo"
  2. echo $_POST['lugar'] . $j; //esto imprimiría "hola mundo1", "hola mundo2"
  3.  
  4. //El punto es que tus campos no se llaman "lugar" si no "lugarX" donde X es un numero
  5. echo $_POST['lugar'.$j]; //Esto te dará el valor real de cada campo
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #3 (permalink)  
Antiguo 12/05/2011, 08:27
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 8 meses
Puntos: 77
Respuesta: Recibir via $_POST concatenada a un indice

El "indice" (que en realidad no es un indice) es parte del nombre del campo, por lo tanto, debe ir dentro de los corchetes, no fuera
  #4 (permalink)  
Antiguo 12/05/2011, 09:04
Avatar de s00rk  
Fecha de Ingreso: octubre-2010
Ubicación: Mexico
Mensajes: 238
Antigüedad: 14 años
Puntos: 48
Respuesta: Recibir via $_POST concatenada a un indice

Cita:
Iniciado por Pancho_Khan Ver Mensaje
No se como puedo decir que quiero hacer POST en la variable $lugar con indice $j
Tu mismo lo mencionaste si es un indice hablamos de un arreglo(array) entonces seria asi:

Código PHP:
Ver original
  1. $lugar = $_POST['lugar'][$j];
  #5 (permalink)  
Antiguo 12/05/2011, 14:22
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 7 meses
Puntos: 406
Respuesta: Recibir via $_POST concatenada a un indice

Cita:
Iniciado por s00rk Ver Mensaje
Tu mismo lo mencionaste si es un indice hablamos de un arreglo(array) entonces seria asi:

Código PHP:
Ver original
  1. $lugar = $_POST['lugar'][$j];
No es un indice de un array, fijate como esta creando los input, los nombres de estos son lugar1, lugar2, etc, no son en array lugar[]
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #6 (permalink)  
Antiguo 12/05/2011, 18:49
Avatar de s00rk  
Fecha de Ingreso: octubre-2010
Ubicación: Mexico
Mensajes: 238
Antigüedad: 14 años
Puntos: 48
Respuesta: Recibir via $_POST concatenada a un indice

aaah lo siento no lo habia visto bien,sorry.

Entonces si efectivamente es como Nemutagk te lo ha comentado.
  #7 (permalink)  
Antiguo 12/05/2011, 20:28
Avatar de metacortex
Viejo demente
 
Fecha de Ingreso: junio-2004
Ubicación: Caracas - Venezuela
Mensajes: 9.027
Antigüedad: 20 años, 5 meses
Puntos: 832
Respuesta: Recibir via $_POST concatenada a un indice

Código PHP:
Ver original
  1. name='lugar".$i."'
Código PHP:
Ver original
  1. $_POST[lugar].$j
Esas variables deberían ser iguales..

Ya vi, no me presten atención.

Etiquetas: indice, post, recibir
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 16:18.