Ver Mensaje Individual
  #2 (permalink)  
Antiguo 16/05/2013, 08:36
Sirrohan
 
Fecha de Ingreso: julio-2010
Mensajes: 275
Antigüedad: 13 años, 10 meses
Puntos: 21
Respuesta: Mostrar varios datos de una tabla en checkbox

Yo tengo algo así, en el modelo uso estas dos clases
Código PHP:
Ver original
  1. //class.pgsql.php
  2. class pgsql
  3. {
  4.   var $conexion,$driver,$host,$dbname,$port,$user,$clave;
  5.   function pgsql()
  6.   {
  7.     if(!isset($this->conexion))
  8.     {
  9.         $this->driver="pgsql";
  10.         $this->host="localhost";
  11.         $this->dbname="calidad";
  12.         $this->port="5432";
  13.         $this->user="hloreto";
  14.         $this->clave="Odebrecht2011";
  15.         $this->conexion = pg_connect("host='$this->host' dbname='$this->dbname' user='$this->user' password='$this->clave'");
  16.     }
  17.   }
  18.  
  19.  function consulta($consulta)
  20.  {
  21.     $resultado = pg_query($consulta);
  22.     return $resultado;
  23.   }
  24.  
  25.  function fetch_array($consulta)
  26.  {
  27.     return pg_fetch_array($consulta);
  28.  }
  29.  
  30.  function num_rows($consulta)
  31.  {
  32.      return pg_num_rows($consulta);
  33.  }
  34.  
  35.  function fetch_row($consulta)
  36.  {
  37.      return pg_fetch_row($consulta);
  38.  }
  39.  function fetch_assoc($consulta)
  40.  {
  41.      return pg_fetch_assoc($consulta);
  42.  }
  43.  function fetch_object($consulta)
  44.  {
  45.      return pg_fetch_object;
  46.  }
  47.  
  48. }

Código PHP:
Ver original
  1. //class.selects.php
  2. class selects extends pgsql
  3. {
  4. var codmargen='';
  5. function cargarComponenteMargen()
  6.     {
  7.         $consulta = parent::consulta ("select a.id_componente, a.componente,b.eje from gen_componente a, gen_eje b where a.margen = '".$this->codmargen."' and b.id = a.idejeinicio");
  8.         $num_total_registros = parent::num_rows($consulta);
  9.         if($num_total_registros>0)
  10.         {
  11.             $componentes = array();
  12.             while($componente = parent::fetch_assoc($consulta))
  13.             {
  14.                 $nombre = $componente["componente"];
  15.                 $id = $componente["id_componente"];
  16.                 $eje= $componente["eje"];
  17.                 $componentes[$id]=$nombre." ".$eje;
  18.             }
  19.             return $componentes;
  20.         }//if conteo registros
  21.         else
  22.         {
  23.             return false;
  24.         }// sino retorna falso     
  25.     }
  26. }

Para escribir los checkboxes uso esto:

Código PHP:
Ver original
  1. include("../../Clases/class.pgsql.php"); //se incluye el archivo de la configuración de la base de datos
  2. include("../../Clases/class.selects.php"); //Archivo donde se hacen las consultas a la base de datos
  3.  
  4. $componente = new selects();
  5. $componente->codmargen = $_GET["margen"];  //se obtiene este dato desde un formulario
  6. $componente = $componente->cargarComponenteMargen();
  7. if (is_array($componente)){
  8.     foreach($componente as $key=>$value)
  9.     {
  10.         echo "<input type=\"checkbox\" name=\"Chckbx[]\" value=\"$key\">$value</option> <br>";
  11.        
  12.     }
  13. }
  14. else {
  15.   //echo $componente."no se seleccionó nada ".$_GET["margen"]." <br /> ";
  16. }