Foros del Web » Programando para Internet » PHP »

Checkbox 2

Estas en el tema de Checkbox 2 en el foro de PHP en Foros del Web. Hola a todos, estoy haciendo una pagina con varios checkbox que se rellenan desde una base de datos pero que a la vez permite hacer ...
  #1 (permalink)  
Antiguo 07/04/2009, 08:40
thi
 
Fecha de Ingreso: abril-2009
Mensajes: 244
Antigüedad: 15 años
Puntos: 0
Checkbox 2

Hola a todos,

estoy haciendo una pagina con varios checkbox que se rellenan desde una base de datos pero que a la vez permite hacer cambios en esta base de datos en función de si el checkbox esta marcado o no. El codigo que estoy poniendo es el siguiente; el update ya esta probado y funciona, así que yo creo que el problema está en el "if"

Un saludo.

Codigo:

<input type='checkbox' name='D1' value='0'>


if($_GET['D1']== "1")
{
$query = "UPDATE grupos SET grupos.Ser'1' WHERE grupos.operador='TRAV'";
$result = mysql_query($query);
}
else
{
$query = "UPDATE grupos SET grupos.Ser='0' WHERE grupos.operador='TRAV'";
$result = mysql_query($query);
}
  #2 (permalink)  
Antiguo 07/04/2009, 08:44
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Checkbox 2

Recuerda que los checkbox solo son enviados si estos fueron "checados", por lo que tu checkbox nunca va a tener el value como 1, si este fue enviado va a valer 0, o el value que definas en el tag.

Saludos.
  #3 (permalink)  
Antiguo 07/04/2009, 09:00
thi
 
Fecha de Ingreso: abril-2009
Mensajes: 244
Antigüedad: 15 años
Puntos: 0
Respuesta: Checkbox 2

Gracias por tu pronta respuesta GatorV, pero no pillo lo que me quieres decir.
  #4 (permalink)  
Antiguo 07/04/2009, 09:13
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Checkbox 2

Si tu tienes un checkbox por ejemplo:
Código html:
Ver original
  1. <input type="checkbox" name="foo" value="bar" />

Si el usuario lo marca, en php si tu haces echo $_POST['foo'], este te imprime "bar", si el usuario no lo marca, $_POST['foo'] seria null.

Es decir solamente si el usuario marca el checkbox te llega el atributo de lo que este en value, de lo contrario no te llega nada.

Saludos.
  #5 (permalink)  
Antiguo 07/04/2009, 09:43
thi
 
Fecha de Ingreso: abril-2009
Mensajes: 244
Antigüedad: 15 años
Puntos: 0
Respuesta: Checkbox 2

Gracias, ya funciona,

pero como hago para que me refresque el formulario y me quede marcado el checkbox y no tenga que refrescar yo el formulario volviendo a llamar a la pagina.

Un saludo.
  #6 (permalink)  
Antiguo 07/04/2009, 09:57
 
Fecha de Ingreso: diciembre-2005
Ubicación: Vigo
Mensajes: 135
Antigüedad: 18 años, 3 meses
Puntos: 3
Respuesta: Checkbox 2

El formalirio puedes refrescarlo si una vez que haces el update recargas la pagina, tambien tendras que hacer una consulta para saber en que estado esta el chekbox y segun este activado o no con un "if", poner el checkbos como "checado" o sin estar "checado"
__________________
AlfaMeta formacion
  #7 (permalink)  
Antiguo 07/04/2009, 10:22
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Checkbox 2

Exacto la etiqueta es checked="checked":
Código html:
Ver original
  1. <input type="checkbox" name="foo" value="bar" checked="checked" />

Saludos.
  #8 (permalink)  
Antiguo 07/04/2009, 12:41
thi
 
Fecha de Ingreso: abril-2009
Mensajes: 244
Antigüedad: 15 años
Puntos: 0
Respuesta: Checkbox 2

Como recargo la pagina(esto me interesa mucho para otros formularios), porque he intentado ponerle "location.reload()" al botón "submit" y no me funciona.

Un saludo.
  #9 (permalink)  
Antiguo 07/04/2009, 13:52
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Checkbox 2

location.reload() es Javascript, desde PHP no puedes recargar la pagina, es forzoso hacerlo con Javascript, te invito te des una vuelta por ese foro.

Saludos.
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 07:54.