Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/07/2012, 12:19
chubse
 
Fecha de Ingreso: marzo-2012
Mensajes: 84
Antigüedad: 12 años, 8 meses
Puntos: 3
Identificar a que id corresponde un array de Checkbox

Que tal amigos, antes que nada les agradezco su interés y ayuda que siempre proporcionan en el foro.
Lo que necesito es guardar el valor de los checkbox cuando esta seleccionado y no lo esta porque tengo un formulario donde pinto un array desde MySQL con los alumnos de una escuela y después pinto los checkbox vacíos para que el profesor seleccione quién asistió a clases y quién no, entonces mi idea es que cuando se seleccione el checkbox me envíe a mi tabla de MySQL el '1' y cuando no entonces el '0', para que cuando haga consultas o filtros de quién asistió y quién no, sea más fácil.
Hasta ahorita cuando selecciono mi checkbox ya asigna el '1' y cuando no también asigna el '0', hasta ahí va todo perfecto, el problema es que no me discrimina o identifica a qué alumno corresponde la asistencia.

Por ejemplo (Si=1, No=0):

Alumno Asistencia
José 1
Pedro 0
María 1

Me debería enviar así
1
0
1

Pero me envía así:
1
1
0

No sé que esté haciendo mal, espero me puedan ayudar.

Muchas gracias

Código del formulario
Código PHP:
Ver original
  1. <?php
  2.    
  3. $usu_alum=mysql_query("SELECT AP_PATERNO, AP_MATERNO, NOMBRE, ID_ALUMNO, MATRICULA FROM ml_dat_ALUMNO WHERE ID_GRUPO = '$nombre_gpo'");
  4.  
  5. echo "<table width='680' border='0' align='left'>";
  6.    
  7. echo '<form action="CONEXION_ASISTENCIA.php" id="asist" name="form1" method="POST">';
  8.  
  9. echo "<tr>";
  10.  
  11. echo "<td>Nombre</td>";
  12.  
  13. echo "<td>Matricula</td>";
  14.  
  15. echo "<td >Asistencia</td>";
  16.  
  17. echo "<td>Fecha de asistencia</td>";
  18.  
  19. echo "</tr>";
  20.  
  21. while ($row_asist = mysql_fetch_row($usu_alum))    {
  22.    
  23. echo "<input type='hidden' name='ID_GRUP[]' id='ID_GRUP' value='$row_gpo[0]' />";
  24.  
  25. echo "<input type='text' name='ALUMNOS[]' value='$row_asist[3]'/>";
  26.  
  27. echo "<td ><input type='checkbox' name='ASIST[]' value='".$row_asist[3]."'></td></input> \n";
  28.  
  29. echo "<td ><input type='text' name='FECHA_ASISTENCIA[]' size='20' maxlength='20' value=''></td></input> \n";
  30.  
  31. echo "</tr> \n";
  32.    
  33. }
  34.  
  35. echo "<td><input type='submit' name='ENVIAR' id='ENVIAR' value='Guardar'><input type='reset' name='RESTABLECER' id='RESTABLECER' value='Borrar datos'></td> \n";
  36.  
  37. echo "</table> \n";
  38.  
  39. echo '</form>';
  40.  
  41.  ?>

Código de recepción (CONEXION_ASISTENCIA.php)
Código PHP:
Ver original
  1. <?php
  2.  
  3. include ("CONEXION_MYSQL.php");
  4.  
  5.    
  6. $GRUPO=$_POST['ID_GRUP'];
  7. $ALUMNO=$_POST['ALUMNOS'];
  8. $ASISTENCIA= $_POST['ASIST'];
  9. $FECHA_ASISTENCIA=$_POST['FECHA_ASISTENCIA'];
  10. $n=count($GRUPO);
  11.  
  12. for($i=0; $i<$n; $i++)
  13. {        
  14.  
  15. if (!isset($ASISTENCIA[$i])){
  16. $ASISTENCIA[$i]=0;
  17. }
  18. else{
  19. $ASISTENCIA[$i]=1;
  20. }
  21.    
  22. $insertar=mysql_query("INSERT INTO ml_dat_ASISTENCIA(ID_GRUPO,ID_ALUMNO,ASISTENCIA,FECHA_ASIST) VALUES('".$GRUPO[$i]."','".$ALUMNO[$i]."','".$ASISTENCIA[$i]."','".$FECHA_ASISTENCIA[$i]."')",$conexion);
  23.  
  24. if (!$insertar) {
  25. die("Fallo en la insercion de registro en la Base de Datos: " . mysql_error());
  26.  
  27. }
  28. }
  29. mysql_close($conexion);
  30.  
  31. echo '<script>alert("Los datos han sido almacenados en la base de datos");</script>';
  32.         echo '<SCRIPT LANGUAGE="javascript">
  33.        location.href="MILISTA_BD_ASIST.php";
  34.        </SCRIPT>';
  35.  
  36.  
  37.  
  38.  
  39. ?>