Ver Mensaje Individual
  #4 (permalink)  
Antiguo 08/10/2010, 20:55
Avatar de carmagedon
carmagedon
 
Fecha de Ingreso: junio-2005
Ubicación: Argentina
Mensajes: 794
Antigüedad: 18 años, 10 meses
Puntos: 23
Respuesta: Lista completa de checkbox y marcar los seleccionados

Hola,

Mmm, lo unico que le encontré medio raro fue acá:

Código PHP:
Ver original
  1. <?php
  2. include('conexio.php');
  3. echo "Empresa por URL: ".$_GET["id_empresa"]."<hr>";
  4.  
  5. $sql = "SELECT * FROM tipo_servicios ORDER BY nombre_servicio";
  6. $res = mysql_query($sql);
  7. while($r = mysql_fetch_array($res)) {
  8.     $sql2 = "SELECT * FROM relacion_empresas_servicios WHERE id_empresa = '".$_GET["id_empresa"]."'";
  9.     $res2=mysql_query($sql2);
  10.     //Todo bien hasta acá....
  11.    
  12.     while($r2=mysql_fetch_array($res2)) {
  13.         if($r2["id_empresa"] == $_GET["id_empresa"]) {
  14.             $checked = "checked";
  15.         } else {
  16.             $checked = "";
  17.         }
  18.     } // de while r2
  19.    
  20.     /*
  21.      * OBSERVACIÓN:
  22.      * Lo que se almacenará en checked será el último $r2, es decir,
  23.      * cuando termina el while, ese valor va a parar al checked...
  24.      */
  25.    
  26.     $num=$num+1;
  27.     echo "<input type='checkbox' name='actividades[".$num."]' value='".$r["id_servicio"]."' class='corto' ".$checked." />";
  28.     echo "<label for='".$r["nombre_servicio"]."'>".$r["nombre_servicio"]."</label> <br />";
  29.     if($num % 2==0) {
  30.         echo "<br />";
  31.     }
  32. } // de while $r
  33. ?>

Está comentado.
Es el tema del checked, es que al estar dentro de un while, se queda cargado con el registro del último, o sea, es un bucle que la variable se va reactualizando y termina con el ultimo.

Pero no sé que decirte ya, quizás espera a otro usuario que te de una mano...

Suerte..
__________________
Freelance - Aplicaciones Web