Foros del Web » Programando para Internet » PHP »

¿Como saber cuantos "checkbox" tildó el usuario?

Estas en el tema de ¿Como saber cuantos "checkbox" tildó el usuario? en el foro de PHP en Foros del Web. Tengo un simple formulario con 3 opciones tipo "checkbox", que envío vía POST a otra página. En esa otra página, necesitaría saber cuantos de esos ...
  #1 (permalink)  
Antiguo 20/03/2007, 11:45
Avatar de K3NNY
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: ARGENTINA!
Mensajes: 1.493
Antigüedad: 20 años, 8 meses
Puntos: 20
Pregunta ¿Como saber cuantos "checkbox" tildó el usuario?

Tengo un simple formulario con 3 opciones tipo "checkbox", que envío vía POST a otra página.

En esa otra página, necesitaría saber cuantos de esos "checkbox" fueron tildados, para que la página reaccione en base a eso, según las siguientes reglas...

Si tildaron solo UN checkbox (cualquiera) o los TRES, que imprima "debe tildar dos checkbox".
Si tildaron DOS checkbox, que imprima CUALES fueron tildados.


Desde ya, se agradece cualquier ayuda en este aspecto.
__________________
delFuego.com.ar
mi tumblelog sobre diseño

La dedicación en mi respuesta es directamente proporcional a la dedicación en tu pregunta.
  #2 (permalink)  
Antiguo 20/03/2007, 11:49
 
Fecha de Ingreso: julio-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.304
Antigüedad: 19 años, 4 meses
Puntos: 6
Re: ¿Como saber cuantos "checkbox" tildó el usuario?

Depende como hayas nombrado esos checkboxes: Si los renombraste juntos como un vector asi:

Código HTML:
<input name="extras[]" type="checkbox" value="12"> 
Es bastante sencillo:

Código PHP:
<?php echo count($_POST["extras"]);?>


<pre>
<?php 
//Solo para que te des cuenta como llega la información
print_r($_POST);
?>
</pre>
__________________
Federico.

Mi página: www.jourmoly.com.ar
  #3 (permalink)  
Antiguo 20/03/2007, 14:17
Avatar de K3NNY
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: ARGENTINA!
Mensajes: 1.493
Antigüedad: 20 años, 8 meses
Puntos: 20
Re: ¿Como saber cuantos "checkbox" tildó el usuario?

Cita:
Iniciado por Fridureiks Ver Mensaje
Código HTML:
<input name="extras[]" type="checkbox" value="12"> 
Es bastante sencillo:

Código PHP:
<?php echo count($_POST["extras"]);?>
Buenísimo. ¿Y como podría imprimir una frase u otra dependiendo de la cantidad de checkbox tildados?
__________________
delFuego.com.ar
mi tumblelog sobre diseño

La dedicación en mi respuesta es directamente proporcional a la dedicación en tu pregunta.
  #4 (permalink)  
Antiguo 20/03/2007, 14:23
 
Fecha de Ingreso: junio-2004
Mensajes: 15
Antigüedad: 20 años, 5 meses
Puntos: 0
Re: ¿Como saber cuantos "checkbox" tildó el usuario?

Código PHP:

$checks 
=  count($_POST["extras"]);

if (
$checks == 1) {
echo 
"1 checkbox tickeado<br>";
} elseif (
$checks == 2) {
echo 
"2 checkboxs tickeado<br>";
} elseif (
$checks == 0) {
echo 
"sin checkbox tickeados";
}
echo 
"<br><br>";
echo 
"Has Tickeado:<br>";

foreach (
$_POST["extras"] as $key => $value) {
echo 
"$key => $value<br>";

espero te sirva :D

con el foreach listas los checkbox que tickeo con su name y value

Saludos.
  #5 (permalink)  
Antiguo 21/03/2007, 02:51
 
Fecha de Ingreso: octubre-2003
Mensajes: 33
Antigüedad: 21 años, 1 mes
Puntos: 0
Re: ¿Como saber cuantos "checkbox" tildó el usuario?

Yo me ahorraría las sentencias if, dejándolo así:

Código PHP:
$check_num count($_POST['extras']);
echo 
'Se marcaron $check_num checkbox'
Aparte del foreach, puedes hacer lo siguiente para mostrar los checkbox marcados:

Código PHP:
$check_names array_keys($_POST['extras']);
$check_values array_values($_POST['extras']);
for (
$i 0$i $check_num$i++) {
echo 
'Se marcó <em>$check_name[$i]</em> con valor <em>$check_values[$i]</em><br />';

  #6 (permalink)  
Antiguo 21/03/2007, 10:07
Avatar de K3NNY
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: ARGENTINA!
Mensajes: 1.493
Antigüedad: 20 años, 8 meses
Puntos: 20
Re: ¿Como saber cuantos "checkbox" tildó el usuario?

Muchas gracias por las soluciones propuestas; me vienen muy, pero muy, bien.
__________________
delFuego.com.ar
mi tumblelog sobre diseño

La dedicación en mi respuesta es directamente proporcional a la dedicación en tu pregunta.
  #7 (permalink)  
Antiguo 21/03/2007, 11:09
 
Fecha de Ingreso: julio-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.304
Antigüedad: 19 años, 4 meses
Puntos: 6
Re: ¿Como saber cuantos "checkbox" tildó el usuario?

Cita:
Iniciado por verm83 Ver Mensaje
Yo me ahorraría las sentencias if, dejándolo así:

Código PHP:
$check_num count($_POST['extras']);
echo 
'Se marcaron $check_num checkbox'
Pero la pregunta era como hacer algo dependiendo de la cantidad de marcados..., si es 1 llama a juan, si es 2 llama a pedro, si es 3 no llames a nadie.

Saludos
__________________
Federico.

Mi página: www.jourmoly.com.ar
  #8 (permalink)  
Antiguo 21/03/2007, 14:49
 
Fecha de Ingreso: octubre-2003
Mensajes: 33
Antigüedad: 21 años, 1 mes
Puntos: 0
Re: ¿Como saber cuantos "checkbox" tildó el usuario?

Cierto, fallo mío, lo leí y a la hora de responder se me fue... se puede hacer con else/if o con switch, dejo por aquí un ejemplo, por si no lo sabe:

Código PHP:
switch ($checks) {
case 
0:
// Funciones si vale 0
break;
case 
1:
// Funciones si vale 1
break;
default:
// Funciones si vale cualquier otra cosa
break;

  #9 (permalink)  
Antiguo 21/03/2007, 20:18
Avatar de K3NNY
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: ARGENTINA!
Mensajes: 1.493
Antigüedad: 20 años, 8 meses
Puntos: 20
Re: ¿Como saber cuantos "checkbox" tildó el usuario?

Muchas gracias por lo del switch, no se me había ocurrido.
__________________
delFuego.com.ar
mi tumblelog sobre diseño

La dedicación en mi respuesta es directamente proporcional a la dedicación en tu pregunta.
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 21:31.