Foros del Web » Programando para Internet » PHP »

Recibir todos los checkbox seleccionados

Estas en el tema de Recibir todos los checkbox seleccionados en el foro de PHP en Foros del Web. Como van? Cargo un checkbox con todos los registros de una tabla de la base de datos eso funciona perfectamente. Código: <?php //Aqui va el ...
  #1 (permalink)  
Antiguo 24/07/2007, 15:18
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 17 años, 11 meses
Puntos: 50
Recibir todos los checkbox seleccionados

Como van?

Cargo un checkbox con todos los registros de una tabla de la base de datos eso funciona perfectamente.

Código:
<?php
//Aqui va el select, etc. Luego: 
while ($row=mysql_fetch_array($PremAnexos))     			
{	
       echo "<input name=PremAnexos type=checkbox value=",$row['cod_doc']," />".$row['descripcion']." <br />";
}
?>
ahora quiero saber como recibir en php todos los checkbox chuliados ya que la cantidad de opciones es variable "dependiendo la cantidad de registros de la tabla de la base de datos"


Favor ayudenme con eso

Gracias
  #2 (permalink)  
Antiguo 24/07/2007, 16:08
Avatar de gerson  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 481
Antigüedad: 19 años, 2 meses
Puntos: 4
Re: Recibir todos los checkbox seleccionados

Hola helacer prueba esto:

Código PHP:
<?php
//Aqui va el select, etc. Luego: 
while ($row=mysql_fetch_array($PremAnexos))                 
{    
       echo 
"<input name=PremAnexos[] type=checkbox value=".$row['cod_doc']." />".$row['descripcion']." <br />";
}
?>
luego cuando para obtener los valores de los checkbos.

Código PHP:
for($i=0;$i<count($_POST['PremAnexos']);$i++) {
  echo 
$_POST['PremAnexos'][$i] . '<br>';

Saludos
__________________

  #3 (permalink)  
Antiguo 26/07/2007, 21:30
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 17 años, 11 meses
Puntos: 50
Re: Recibir todos los checkbox seleccionados

for($i=0;$i<count($_POST['PremAnexos']);$i++)
{
$IdDocumento = $_POST['PremAnexos'][$i];
// Inserto la documentación de la renovación de la prematrícula
$DocRenovacion = mysql_query("insert into doc values ('".$IdTabla."','".$IdDocumento."')");
}


Lo hice asi guiandome de la respuesta que me dieron pero solo me inserta uno de todos los checkbox chuliados

¿Estoy haciendo algo mal? hay otra forma de hacerlo?

AYUDA GRACIAS
  #4 (permalink)  
Antiguo 26/07/2007, 22:02
Avatar de gerson  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 481
Antigüedad: 19 años, 2 meses
Puntos: 4
Re: Recibir todos los checkbox seleccionados

Pues puede ser por los nombres de los checkboxs:
Código PHP:
echo '<input name="PremAnexos[]" type="checkbox" value='.$row['cod_doc'].' />'.$row['descripcion'].' <br />'
Saludos
__________________

  #5 (permalink)  
Antiguo 26/07/2007, 22:12
Avatar de eskorbutin  
Fecha de Ingreso: junio-2006
Mensajes: 65
Antigüedad: 17 años, 10 meses
Puntos: 2
Re: Recibir todos los checkbox seleccionados

Mira prueba esto:

Código PHP:
while ($row=mysql_fetch_assoc($PremAnexos))                 
{    
       echo 
"<input name='{$row['cod_doc']}' type='checkbox' value='{$row['cod_doc']}' />{$row['descripcion']}<br />";


y para comprobar cual ha sido seleccionado has esto:


Código PHP:
/*Aqui pones el select, el mismo select lo puedes usar para los dos while*/
while ($row=mysql_fetch_assoc($PremAnexos))                 
{    
      if(isset(
$_POST['{$row['cod_doc']}'])){
          
$IdDocumento $row['cod_doc'];
          
$DocRenovacion mysql_query("insert into doc values ('".$IdTabla."','".$IdDocumento."')");
      }



PD. No se donde das el valor de $IdTabla
  #6 (permalink)  
Antiguo 26/07/2007, 23:49
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 17 años, 11 meses
Puntos: 50
Re: Recibir todos los checkbox seleccionados

Gracias a los dos que me ayudaron logre hacerlo funcionar de las dos formas el primero no me funcionaba debido a un error mio ya me quedo perfecto.
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 20:32.