Foros del Web » Programando para Internet » PHP »

checkbox mantenga checked en paginacion

Estas en el tema de checkbox mantenga checked en paginacion en el foro de PHP en Foros del Web. Estimados, creo que mas claro imposible. Tengo muchos datos que vienen de una base, hay un checkbox en cada row para seleccionar y ademas los ...
  #1 (permalink)  
Antiguo 25/09/2012, 08:10
 
Fecha de Ingreso: noviembre-2009
Mensajes: 381
Antigüedad: 15 años, 1 mes
Puntos: 6
checkbox mantenga checked en paginacion

Estimados, creo que mas claro imposible.

Tengo muchos datos que vienen de una base, hay un checkbox en cada row para seleccionar y ademas los tengo paginados.

Si paso de una pagina a otra, como mantengo tildados aquellos que han sido tildados?

Muchas gracias!
Gustav.
  #2 (permalink)  
Antiguo 25/09/2012, 08:23
Avatar de antoniopol  
Fecha de Ingreso: agosto-2012
Ubicación: Valladolid
Mensajes: 114
Antigüedad: 12 años, 4 meses
Puntos: 21
Respuesta: checkbox mantenga checked en paginacion

Se me ocurre un array en una variable de sessión
$_SESSION["checked"] que sea el array que contenga los campos checked y los vaya recorriendo.
__________________
>> Blog de desarrollo web.
>> @antoniopol06 amante de la Web =D
  #3 (permalink)  
Antiguo 25/09/2012, 08:38
 
Fecha de Ingreso: noviembre-2009
Mensajes: 381
Antigüedad: 15 años, 1 mes
Puntos: 6
Respuesta: checkbox mantenga checked en paginacion

mmm, es verdad... quiza con un poco de javascript de ayuda lo pueda hacer mas solido.

Muchas gracias!
Gustav.
  #4 (permalink)  
Antiguo 25/09/2012, 08:48
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 7 meses
Puntos: 1517
Respuesta: checkbox mantenga checked en paginacion

Lo importante es mantener el dato en cada petición. Solo es cuestión de guardar en alguna variable los datos y cuando le den al enlace ese dato se envie, en este caso se usaria $_GET para mantener ese valor. Podrías usar javascript para concatenar lo que el usuario seleccionó en los checkbox junto con el valor que quiero ver...
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 25/09/2012, 09:35
Avatar de Perr0  
Fecha de Ingreso: mayo-2005
Ubicación: Santiago de Chile, Chile
Mensajes: 676
Antigüedad: 19 años, 6 meses
Puntos: 79
Respuesta: checkbox mantenga checked en paginacion

un ejemplo simple sin necesidad de javascript:

Código PHP:
Ver original
  1. <?php
  2. $_SESSION["combos"] = $_POST["combos"];
  3.  
  4. $combo1 = array("1"=>"auto", "2"=>"camioneta", "3"=>"tractor", "4"=>"motocicleta", "5"=>"lancha");
  5. $combo2 = array("1"=>"Enero", "2"=>"Febrero", "3"=>"Marzo", "4"=>"Abril", "5"=>"Mayo",
  6.                 "4"=>"Junio", "7"=>"Julio", "8"=>"Agosto", "9"=>"Septiembre", "10"=>"Octubre",
  7.                 "11"=>"Noviembre", "12"=>"Diciembre");
  8. $combo3 = array("2008"=>"2008", "2009"=>"2009", "2010"=>"2010", "2011"=>"2011", "2012"=>"2012", "2013"=>"2013");
  9.  
  10. function lista($array, $nombre){
  11.     // $array -> data que contiene el select
  12.     // $nombre -> como se identifica el select y recibe respuesta de cual esta seleccionado
  13.     $s = $_SESSION["combos"][$nombre];
  14.     $c .= "<select name=\"combos[".$nombre."]\" >\n";
  15.     foreach($array as $v=>$t){
  16.         $sel = ($v==$s) ? "selected" : "" ;
  17.         $c .= "  <option value=\"".$v."\" ".$sel.">".$t."</option>\n";
  18.     }
  19.     $c .= "</select>\n";
  20.     return $c;
  21. }
  22. ?>
  23. <form method="post">
  24. <?php echo lista($combo1, "vehiculos"); ?><br>
  25. <?php echo lista($combo2, "meses"); ?><br>
  26. <?php echo lista($combo3, "anios"); ?><br>
  27. <input type="submit">
  28. </form>

salu2
__________________
Numerador Mp3 en Access =)
http://www.mediafire.com/download/r9...pdw/mp3(2).zip

Etiquetas: checkbox, checked, paginacion
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 08:03.