Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Como crear consulta con los checkbox marcados?

Estas en el tema de Como crear consulta con los checkbox marcados? en el foro de PHP en Foros del Web. Hola a todos tengo un problema , quisiera hacer una consulta que me muestre los checkbox marcados , osea que me muestre todos los checkbox ...
  #1 (permalink)  
Antiguo 10/01/2016, 07:41
 
Fecha de Ingreso: julio-2013
Mensajes: 309
Antigüedad: 10 años, 9 meses
Puntos: 2
Como crear consulta con los checkbox marcados?

Hola a todos tengo un problema , quisiera hacer una consulta que me muestre los checkbox marcados , osea que me muestre todos los checkbox y algunos estén marcados según la consulta.

Esto es lo que tengo
Código PHP:
 $categoria = "20";
$sqlcategoria="Select * FROM categoria_libro where id='$categoria'" ;
                             $resultcategoria = pg_query ($sqlcategoria);
                              while ($rowcategoria = pg_fetch_assoc($resultcategoria)){  ?>        
      
                            <input type="checkbox" name="categoria[]" id ="categoria" value="<?php echo $row['id'];?>" checked> <?php echo $rowcategoria['categoria']; ?>    
                                
<?php }
Aqui me muestra un solo checkbox pero sin estar marcado


Aquí esta otro que me muestra todas las categorias
Código PHP:
<?php $categoria="Select * FROM categoria_libro " 
$resultado pg_query ($categoria);     while ($resultado1 pg_fetch_assoc($resultado)){    ?>
    <input type="checkbox" name="categoria[]" id ="categoria" value="<?php echo $row['id'];?>">

<?php }    ?>

Entonces como podria unir ambas sentencias para que me muestre todas las categorias en checkbox y a la vez me marque solo la que están seleccionadas según la otra consulta


le agradezco su pronta respuesta
  #2 (permalink)  
Antiguo 10/01/2016, 08:23
 
Fecha de Ingreso: diciembre-2015
Ubicación: Valencia
Mensajes: 61
Antigüedad: 8 años, 3 meses
Puntos: 10
Respuesta: Como crear consulta con los checkbox marcados?

No he entendido demasiado lo que pretendes hacer, pero creo que lo que buscas es el UNION de MySQL, para unir los resultados de ambas consultas.
  #3 (permalink)  
Antiguo 10/01/2016, 11:30
 
Fecha de Ingreso: enero-2016
Mensajes: 71
Antigüedad: 8 años, 3 meses
Puntos: 14
Respuesta: Como crear consulta con los checkbox marcados?

Con la segunda consulta tienes todas las categorias por tanto todos los checkboxes.
Lo que necesitas son los checkboxes seleccionados...

Si los tienes en un array (ejemplo):
Código PHP:
// Necesitas este array - es lo mismo que $seleccionadas = array(12, 20, 33, 41, 43, 49);
$seleccionadas = [122033414349];

// Tu consulta para obtener todos los checkboxes
$categoria "SELECT * FROM categoria_libro ";
$resultado pg_query($categoria);

while (
false !== ($row pg_fetch_assoc($resultado))) {
    echo 
'<input type = "checkbox" name = "categoria[]" id = "categoria" value="' $row['id'] . '"';

    
// Comprueba si esta categoria estaba seleccionada
    
if (in_array($row['id'], $seleccionadas)) {
        echo 
' checked';
    }

    echo 
'>';

Debería funcionar con esto ...
  #4 (permalink)  
Antiguo 10/01/2016, 11:32
 
Fecha de Ingreso: enero-2016
Mensajes: 71
Antigüedad: 8 años, 3 meses
Puntos: 14
Respuesta: Como crear consulta con los checkbox marcados?

P.D. Por cierto, este array de $seleccionadas entiendo yo que deberías obtenerlo desde $_POST['categoria].
  #5 (permalink)  
Antiguo 10/01/2016, 14:10
 
Fecha de Ingreso: julio-2013
Mensajes: 309
Antigüedad: 10 años, 9 meses
Puntos: 2
Respuesta: Como crear consulta con los checkbox marcados?

Cita:
Iniciado por x_atrix Ver Mensaje
Con la segunda consulta tienes todas las categorias por tanto todos los checkboxes.
Lo que necesitas son los checkboxes seleccionados...

Si los tienes en un array (ejemplo):
Código PHP:
// Necesitas este array - es lo mismo que $seleccionadas = array(12, 20, 33, 41, 43, 49);
$seleccionadas = [122033414349];

// Tu consulta para obtener todos los checkboxes
$categoria "SELECT * FROM categoria_libro ";
$resultado pg_query($categoria);

while (
false !== ($row pg_fetch_assoc($resultado))) {
    echo 
'<input type = "checkbox" name = "categoria[]" id = "categoria" value="' $row['id'] . '"';

    
// Comprueba si esta categoria estaba seleccionada
    
if (in_array($row['id'], $seleccionadas)) {
        echo 
' checked';
    }

    echo 
'>';

Debería funcionar con esto ...
Gracias me funciono

Etiquetas: checkbox, select, sql
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 09:34.