Foros del Web » Programando para Internet » PHP »

Problemas al recuperar un checkbox

Estas en el tema de Problemas al recuperar un checkbox en el foro de PHP en Foros del Web. Hola a todos! tengo un formulario con varios checkbox y cuyos datos van a parar a una base de datos. Para introducir esos datos, antes ...
  #1 (permalink)  
Antiguo 31/05/2011, 05:20
 
Fecha de Ingreso: abril-2011
Mensajes: 103
Antigüedad: 13 años, 8 meses
Puntos: 3
Problemas al recuperar un checkbox

Hola a todos!
tengo un formulario con varios checkbox y cuyos datos van a parar a una base de datos. Para introducir esos datos, antes tengo que pasarles una función para que en la base de datos se introduzca un 1 o un 0.
Código:
        public function validarCampoPagohoras($pagohoras){
            if ($pagohoras == null || $pagohoras == ''){
                $pagohora=0;
            }
            else{
                $pagohora=1;
            }
            return $pagohora;
        }
El problema me llega cuando quiero que me vuelva a mostrar el mismo formulario con los datos recuperados de la base de datos para que el usuario pueda modificarlos si lo desea. En este caso no sé como convertir el 1 para que aparezca activo en el formulario.
Estas son algunos de los intentos que he hecho a ver si se os ocurre algo!

Código:
        <input type="checkbox" name="pago" value="<?php if(isset($trabajo->pago_actuacion)){ print $trabajo->pago_actuacion;} ?>" />Pago Actuaci&oacute;n
Código:
        <input type="checkbox" name="pago" value="<?php if(isset($trabajo->pago_actuacion) AND $trabajo->pago_actuacion = "1"){ on;} ?>" />
Muchas gracias por anticipado!
  #2 (permalink)  
Antiguo 31/05/2011, 05:37
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, 6 meses
Puntos: 1517
Respuesta: Problemas al recuperar un checkbox

Podrías usar el operador ternario para verificar si el valor que está en la base de datos es igual al valor que tiene el checkbox cuando es seleccionado. Algo como
Código PHP:
<input type="checkbox" nam="foo" value="foo" <?php echo $valorBaseDeDatos == 'foo' 'checked="checked"' ''?> />
<input type="checkbox" nam="foo" value="bar" <?php echo $valorBaseDeDatos == 'bar' 'checked="checked"' ''?> />
<input type="checkbox" nam="foo" value="baz" <?php echo $valorBaseDeDatos == 'baz' 'checked="checked"' ''?> />
<input type="checkbox" nam="foo" value="candy" <?php echo $valorBaseDeDatos == 'candy' 'checked="checked"' ''?> />
<input type="checkbox" nam="foo" value="fruits" <?php echo $valorBaseDeDatos == 'fruits' 'checked="checked"' ''?> />
<input type="checkbox" nam="foo" value="vegetable" <?php echo $valorBaseDeDatos == 'vegetable' 'checked="checked"' ''?> />
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 31/05/2011, 05:41
 
Fecha de Ingreso: marzo-2011
Mensajes: 107
Antigüedad: 13 años, 8 meses
Puntos: 22
Respuesta: Problemas al recuperar un checkbox

Sip, o si lo estas guardando con 0 y 1 puedes hacer

Código PHP:
<input type="checkbox" name="pago" value="on/off" <?php if($pago == 1) { ?>checked<?php ?>>
  #4 (permalink)  
Antiguo 31/05/2011, 05:53
 
Fecha de Ingreso: abril-2011
Mensajes: 103
Antigüedad: 13 años, 8 meses
Puntos: 3
Respuesta: Problemas al recuperar un checkbox

Muchas gracias a los dos por la respuesta tan rápida. Al final lo conseguí gracias a Saneko!
Saludos!

Etiquetas: checkbox, recuperar
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 14:00.