Foros del Web » Programando para Internet » PHP »

passar por el metodo get o post un array de 2 dimensiones

Estas en el tema de passar por el metodo get o post un array de 2 dimensiones en el foro de PHP en Foros del Web. valor que envió por la url @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código HTML: Ver original nombre_categoria_pc[]=lapiz &disponible_categoria[lapiz]=1 tengo un formulario que tengo varias categorias y puede elegir si ...
  #1 (permalink)  
Antiguo 06/12/2011, 06:43
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 15 años, 2 meses
Puntos: 1
passar por el metodo get o post un array de 2 dimensiones

valor que envió por la url

Código HTML:
Ver original
  1. nombre_categoria_pc[]=lapiz&disponible_categoria[lapiz]=1

tengo un formulario que tengo varias categorias y puede elegir si esta o no esta disponible
los input son radio


Código HTML:
Ver original
  1. Si<input type="radio" name="disponible_categoria[<?php echo $row_disponible_categoria_select['nombre_categoria_pc']?>]" value="1"
  2.        
  3.         <?php
  4.         if( $row_disponible_categoria_select['disponible_categoria'] == 1 ){
  5.             echo 'checked="checked"';
  6.         }
  7.         ?>
  8.         />
  9.         No<input type="radio" name="disponible_categoria[<?php echo $row_disponible_categoria_select['nombre_categoria_pc']?>]" value="0"
  10.         <?php
  11.         if( $row_disponible_categoria_select['disponible_categoria'] == 0 ){
  12.             echo 'checked="checked"';
  13.         }
  14.         ?>
  15.         />
tengo problemas a la hora de recuperar el valor
$disponible_categoria = $_GET['disponible_categoria[nombre_categoria_pc]'];

hago un array de 2 dimensiones porque disponible_categoria siempre es igual[este valor siempre es una categoria diferente]= 0 o 1
  #2 (permalink)  
Antiguo 06/12/2011, 06:59
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: passar por el metodo get o post un array de 2 dimensiones

intenta:
$disponible_categoria = $_GET['disponible_categoria']['nombre_categoria_pc'];

si no te funciona, realiza un:

var_dump($_GET);

y verifica como te está tomando el array
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 06/12/2011, 09:04
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 15 años, 2 meses
Puntos: 1
Respuesta: passar por el metodo get o post un array de 2 dimensiones

así no funciona
Código PHP:
Ver original
  1. $disponible_categoria = $_GET['disponible_categoria']['nombre_categoria'];

lo he hecho asi como se haria normalmente
Código PHP:
Ver original
  1. $disponible_categoria = $_GET['disponible_categoria'];
le llega el nombre del producto por hidden
Código PHP:
Ver original
  1. $nombre_categoria_pc = $_GET['nombre_categoria_pc'];

array(22) { ["lapiz"]=> string(1) "0"}

despues hago un for para hacer varios updates con un contador pero, que valor coge
["lapiz"] o => 0

Código PHP:
Ver original
  1. for($disponible_categoria_updates = 0; $disponible_categoria_updates < $comptar_numero_filas_select; $disponible_categoria_updates++ ){
  2.    
  3.         $query = 'UPDATE categories SET disponible_categoria=' .  $disponible_categoria[$disponible_categoria_updates]   . ' WHERE nombre_categoria_pc=  \'' . $nombre_categoria_pc[$disponible_categoria_updates] . '\';';
  4.         $result = mysqli_query($link,$query);
  5.     }

o tendría que utilizar un foreach para poder acceder al valor
  #4 (permalink)  
Antiguo 06/12/2011, 09:17
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: passar por el metodo get o post un array de 2 dimensiones

obviamente debes de colocar el nombre del indice:

$disponible_categoria = $_GET['disponible_categoria']['lapiz'];

o a lo sumo realizar un foreach
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #5 (permalink)  
Antiguo 06/12/2011, 10:38
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 15 años, 2 meses
Puntos: 1
Respuesta: passar por el metodo get o post un array de 2 dimensiones

asi si que le llega el valor
Código PHP:
Ver original
  1. $disponible_categoria = $_GET['disponible_categoria'];
  2. array(22) { ["lapiz"]=> string(1) "0"}


el segundo valor va a variar cada vez
no me funciona así, aunque en vez de lapiz diga nombre_categoria_pc
le llega null
Código PHP:
Ver original
  1. $disponible_categoria = $_GET['disponible_categoria']['lapiz'];

lo del foreach no se muy bien como hacerlo

hay gente que eso mismo que hago yo lo hace con checkbox yo lo quiero hacer con radio y ya casi funciona



el array propiamente dicho no existe son los valores que le llegan de los botones radio del formulario


Si<input type="radio" name="disponible_categoria[
Código PHP:
Ver original
  1. <?php echo $row_disponible_categoria_select['nombre_categoria_pc']?>
]" value="1"

Código PHP:
Ver original
  1. <?php
  2.         if( $row_disponible_categoria_select['disponible_categoria'] == 1 ){
  3.             echo 'checked="checked"';
  4.         }
  5.         ?>
/>


este valor es lo que llega por get disponible_categorías
Código PHP:
Ver original
  1. disponible_categoria[lapiz]=1


entre el set y el where como le paso este valor

Código PHP:
Ver original
  1. for($disponible_categoria_updates = 0; $disponible_categoria_updates < $comptar_numero_filas_select; $disponible_categoria_updates++ ){
  2.         $query = 'UPDATE categories SET disponible_categoria=' .  $disponible_categoria[$disponible_categoria_updates] . ' WHERE nombre_categoria_pc=  \'' . $nombre_categoria_pc[$disponible_categoria_updates] . '\';';
  3.         $result = mysqli_query($link,$query);
  4.     }

Última edición por albertrc; 08/12/2011 a las 11:35

Etiquetas: dimensiones, formulario, metodo, post
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 03:24.