Foros del Web » Programando para Internet » PHP »

checkbox con while

Estas en el tema de checkbox con while en el foro de PHP en Foros del Web. Hola hola tengo un checkbox de html con while que imprime los numeros de sucursales de las tiendas el codigo es este: Código PHP:   ...
  #1 (permalink)  
Antiguo 20/10/2011, 11:54
 
Fecha de Ingreso: abril-2008
Ubicación: Chihuahua Mexico
Mensajes: 166
Antigüedad: 16 años
Puntos: 15
checkbox con while

Hola hola tengo un checkbox de html con while que imprime los numeros de sucursales de las tiendas el codigo es este:

Código PHP:

 <?
$users 
$db->get_results("SELECT sucursal, descripcion FROM sucursal ORDER BY sucursal");
foreach ( 
$users as $user )
?>
     <span class="form-checkbox-item" style="clear:left;">
     <input type="checkbox" class="form-checkbox" id="input_4_1" name="sucursal" value="<? $user->sucursal ?>" />
     <label for="input_4_1"> 
     <?  
      
echo $user->sucursal;
      echo 
" - ";
      echo 
$user->descripcion;
      
?>
     </label>
     </span><span class="clearfix"></span>
 <? ?>

esto me sale perfectamente no ay ningun problema pero me gustaria saber como agarrar los valores de las tiendas que fueron checadas (que deven de dar 'true' o 'on')

resumiendo no se como tomar los valores de los campos que fueron checados ya que vienen de un while

de antemano muchas gracias.

de antemano muchas gracias
  #2 (permalink)  
Antiguo 20/10/2011, 12:01
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 8 meses
Puntos: 194
Respuesta: checkbox con while

en el name pones name="sucursal[]"

Y luego sucursal te llegara como un arreglo.
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #3 (permalink)  
Antiguo 20/10/2011, 12:07
 
Fecha de Ingreso: abril-2008
Ubicación: Chihuahua Mexico
Mensajes: 166
Antigüedad: 16 años
Puntos: 15
Respuesta: checkbox con while

bien h2swider gracias! y el arreglo como lo tomo para mandarlo a un mysql?? con foreach o que onda con eso???

ay te va +1 karma xD
  #4 (permalink)  
Antiguo 20/10/2011, 12:13
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 8 meses
Puntos: 194
Respuesta: checkbox con while

bueno al arreglo le puedes aplicar un implode para transformarlo en una cadena separada por comas, y luego lo metes en un IN de tu consulta sql, el value="" de los checkbox debería ser un dato identificatorio como el ID por ejemplo
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #5 (permalink)  
Antiguo 20/10/2011, 12:19
 
Fecha de Ingreso: abril-2008
Ubicación: Chihuahua Mexico
Mensajes: 166
Antigüedad: 16 años
Puntos: 15
Respuesta: checkbox con while

as de cuenta que aparte de sucursal se debe de tomar tiempo, y horario por cada check osea dentro del check te deve de dar la opcion de teclear horas y seleccionar mediante otros checks los dias (que embrollo!!!)

entonces para seleccionar una sucursal la pasamos por arreglo pero como identificare el check de los dias por cada sucursa??? espero averme explicado
  #6 (permalink)  
Antiguo 20/10/2011, 12:33
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 8 meses
Puntos: 194
Respuesta: checkbox con while

<input type="checkbox" name="soy_un_checkbox[<?php echo $id; ?>]"/>
<input type="text" name="soy_un_textbox[<?php echo $id; ?>]"/>
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #7 (permalink)  
Antiguo 20/10/2011, 12:46
 
Fecha de Ingreso: abril-2008
Ubicación: Chihuahua Mexico
Mensajes: 166
Antigüedad: 16 años
Puntos: 15
Respuesta: checkbox con while

mira te lo pongo completo aver si se explica el codigo mejor que yo

Código PHP:
Ver original
  1. <?
  2.         $users = $db->get_results("SELECT sucursal, descripcion FROM sucursal ORDER BY sucursal");
  3.         foreach ( $users as $user )
  4.         { ?>
  5.         <table width="100%" border="0" align="center">
  6.               <tr onMouseOver="uno(this,'cccccc');" onMouseOut="dos(this,'FFFFFF');">
  7.                 <td width="36%"><input type="checkbox" name="sucursal" value="<? $user->sucursal ?>" />
  8.                 <?  echo $user->sucursal;  echo " - "; echo $user->descripcion;  ?></td>
  9.                 <td width="15%">Hrs.<input name="tiempo" type="text" size="3" readonly></td>
  10.                 <td width="7%">L <input type="checkbox" name="lunes" value="<? $user->sucursal ?>" /></td>
  11.                 <td width="7%">M <input type="checkbox" name="martes" value="<? $user->sucursal ?>" /></td>
  12.                 <td width="7%">M <input type="checkbox" name="miercoles" value="<? $user->sucursal ?>" /></td>
  13.                 <td width="7%">J <input type="checkbox" name="jueves" value="<? $user->sucursal ?>" /></td>
  14.                 <td width="7%">V <input type="checkbox" name="viernes" value="<? $user->sucursal ?>" /></td>
  15.                 <td width="7%">S <input type="checkbox" name="sabado" value="<? $user->sucursal ?>" /></td>
  16.                 <td width="7%">D <input type="checkbox" name="domingo" value="<? $user->sucursal ?>" /></td>
  17.                 </tr>
  18.               </table>
  19.               <? } ?>

se selecciona una tienda con "check" y de la tienda se selecciona una hora "campo de texto" y los dias con con "check" como puedo pasar eso a una bd???

omite el value de los otros checks que eso paso por el copy paste.... mil gracias
  #8 (permalink)  
Antiguo 20/10/2011, 14:45
 
Fecha de Ingreso: abril-2008
Ubicación: Chihuahua Mexico
Mensajes: 166
Antigüedad: 16 años
Puntos: 15
Respuesta: checkbox con while

e estado intento de varias formas pero me manda solo el ultimo registro seleccionado e echo esto:

Código HTML:
Ver original
  1. <td width="36%"><input type="checkbox" name="sucursal[]" value="<? echo $user->sucursal; ?>" />

Código PHP:
Ver original
  1. $i=0;
  2. while($i<=count($sucursal)){
  3.  echo $sucursal[$i];
  4. $i++;
  5. }

y esto otro

Código PHP:
Ver original
  1. foreach( $_POST['sucursal'] as $k => $numSucursal) {
  2.     echo "la sucursal es ".$k." es ".$numSucursal;
  3. }

pero me devuelve solo la ultima sucursal seleccionada entonces le aplique un count a la variable de $sucursal de la siguiente forma

Código PHP:
Ver original
  1. print count($sucursal);

y me devuelve solo "1" ke estare haceindo mal alguna idea???

Última edición por espher; 20/10/2011 a las 14:46 Razón: falto informacion
  #9 (permalink)  
Antiguo 20/10/2011, 15:20
 
Fecha de Ingreso: abril-2008
Ubicación: Chihuahua Mexico
Mensajes: 166
Antigüedad: 16 años
Puntos: 15
Respuesta: checkbox con while

dios santo ya lo logre muchas gracias mi error era el nombre del form no le pongan nombre al form que se hace un lio grande....

mil gracias
  #10 (permalink)  
Antiguo 20/10/2011, 20:04
 
Fecha de Ingreso: abril-2008
Ubicación: Chihuahua Mexico
Mensajes: 166
Antigüedad: 16 años
Puntos: 15
Respuesta: checkbox con while

sigo teniendo problemas con esto, ya logre agarrar todas las "tiendas" por medio de check box pero se supone que cada tienda maneja los datos de lunes-martes-miercoles-jueves-viernes-sabado- domingo que tmb son check box y no logro relacionar esos checkbox cada tienda por ejemplo lo tengo asi.


Cita:
checkbox tienda - campo texto horas - checkbox lunes - checkbox martes -checkbox miercoles checkbox jueves - checkbox viernes etc. tec.
donde cada tienda seleccionada deve de guardar un true o false de cada dia - son 100 tiendas entonces cada tienda deve de guardar el resultado diferente pero no logro hacerlo

ya intente con un foreach dentro de otro y nada entonces pense en ponerle un identificador a cada dia (el identificador seria la tienda) pero no se como agarrar esos datos por medio de otro foreach para pasarlo a la bd...

espero averme explicado, alguna ayudadite por favor????

Etiquetas: checkbox, html
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 17:30.