Foros del Web » Programando para Internet » PHP »

Checkbox booleano??

Estas en el tema de Checkbox booleano?? en el foro de PHP en Foros del Web. Buenas a todos, El problema es el siguiente: necesito que al activar un checkbox me envie por ejemplo: 1 o ON y que cuando no ...
  #1 (permalink)  
Antiguo 26/10/2009, 08:25
Avatar de tupajz  
Fecha de Ingreso: julio-2006
Mensajes: 55
Antigüedad: 17 años, 9 meses
Puntos: 1
Checkbox booleano??

Buenas a todos,

El problema es el siguiente:

necesito que al activar un checkbox me envie por ejemplo: 1 o ON y que cuando no se envie activo el checkbox mediante el formulario me envie: 0 o OFF.

El problema es que cuando activo el checkbox me envia el valor ON, pero cuando no lo activo y envio el formulario, el archivo .php no reconoce la variable del checkbox:


Notice: Undefined index: check_otorgada in C:\wamp\www\Sisconsul\edita_permiso_b.php on line 92


Alguien sabe como solucionarlo? es posible usar un checkbox como variable booleana?


Espero que alguien pueda iluminarme, de antemano gracias
  #2 (permalink)  
Antiguo 26/10/2009, 08:29
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Checkbox booleano??

Es que el formulario no envia nada cuando no esta seleccionado el checkbox. Para eso puedes usar isset de PHP para saber si el checkbox no ha sido seleccionado.
__________________
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 26/10/2009, 08:35
Avatar de tupajz  
Fecha de Ingreso: julio-2006
Mensajes: 55
Antigüedad: 17 años, 9 meses
Puntos: 1
Respuesta: Checkbox booleano??

Órale, no se me había ocurrido....

Muchísimas gracias abima, ya van varias que me salvas.

Un abrazo
  #4 (permalink)  
Antiguo 26/10/2009, 08:36
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años
Puntos: 50
Respuesta: Checkbox booleano??

Según lo que tengo entendido, el checkbox envía su value sólo si está checkeado al momento del submit. Sin embargo, por conversión de tipos debiera leerte como false un cero, y un uno como true. El "error" que te pone no es realmente un error sino un notice (un aviso). Puedes evitarlo poniendo "@", o lo que sería mucho más prolijo, comprobar que esté seteada la variable:
form.html:
Código HTML:
<input type="checkbox" name="check1" value="1" /> 
procesaForm.php:
Código PHP:
// Forma prolija, no hace falta comprobar cuál es el valor de la variable, sólo si existe
if(isset($_REQUEST['check1']))
{
echo 
"check1 checkeado";
}
else
{
echo 
"check1 no checkeado";
}

// Forma "sucia"
if(@$_REQUEST['check1'])
{
echo 
"check1 checkeado";
}
else
{
echo 
"check1 no checkeado";

¡Suerte!
  #5 (permalink)  
Antiguo 26/10/2009, 09:41
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Checkbox booleano??

no es recomendable silenciar/ocultar los errores con @

porque de esa forma luego vienen al foro diciendo: ¡no veo el error!! ¿alguien lo puede ver por mi?
(y el código esta repleto de @)

siempre es mejor comprobar con lo que trae PHP nuestras variables, funciones, etc...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
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 05:25.