tengo que cargar notas a alumnos seleccionando la instancia (recuperatorio, etc.) previamente, ahora si rinde en diciembre o marzo además le debo cargar el nº de libro y folio donde va asentada la nota.
tento hecho este formulario que me lo carga bien, y me lo completa bien también.
Ahora, mi problema es que me guarda bien la nota, pero no el libro y folio, que siempre guarda con 0. dónde puede estar el error?
el código que uso es el siguiente:
Código:
<table class="fuente11" cellspacing="2" cellpadding="2" border="1" width="100%"> <?php $sel_resultado="SELECT A.nroleg,A.apellido,A.nombre,A.dni,C.nrolegajo FROM alumnos A INNER JOIN curso_alumnos C ON A.nroleg=C.nrolegajo WHERE C.idcurso='$idcurso' AND C.ciclo_lectivo='$ciclo' AND C.borrado=0 ORDER BY A.sexo DESC,A.apellido ASC"; $res_resultado=mysql_query($sel_resultado); $contador=1; //while ($contador < mysql_num_rows($res_resultado)) while($row = mysql_fetch_array($res_resultado)) { if ($contador % 2) { $fondolinea="itemParTabla3"; } else { $fondolinea="itemImparTabla3"; } echo " <tr class='echo $fondolinea'> <td width='5%'> <div align='center'> $contador </div> </td> <td width='8%'> <div align='center'> $row[nroleg] </div> </td> <td width='25%'> <div align='left'> $row[apellido] </div> </td> <td width='30%'> <div align='left'> $row[nombre] </div> </td> <td width='12%' align='center'> <select name=nota$row[nroleg] style='font-size: medium; color: #000040; font-family: sans-serif; font-weight: bold;'> <option value=''>Ingresar</option> <option value='0'>Ausente</option> <option value='1'>01</option> <option value='2'>02</option> <option value='3'>03</option> <option value='4'>04</option> <option value='5'>05</option> <option value='6'>06</option> <option value='7'>07</option> <option value='8'>08</option> <option value='9'>09</option> <option value='10'>10</option> </select> </td> <td width='10%'> <div align='center'> <input name=libro$row[nroleg] type=text size=3 maxlength=3/> </div> </td> <td width='10%'> <div align='center'> <input name=folio$row[nroleg] type=text size=3 maxlength=3/> </div> </td> </tr>"; $contador++; } mysql_free_result($res_resultado); ?> </table> </div> <p></p> <input id="Acodmat" name="Acodmat" value="<?php echo $codmat; ?>" type="hidden" /> <input id="Aciclo" name="Aciclo" value="<?php echo $ciclo; ?>" type="hidden" /> <input id="Acurso" name="Acurso" value="<?php echo $idcurso; ?>" type="hidden" /> <img src="http://www.forosdelweb.com/f18/theme/buttons/exit.png" width="120" height="30" title="Cerrar la ventana sin guardar los cambios ..." onclick="cancelar();" onmouseover="style.cursor=cursor"/> <img src="http://www.forosdelweb.com/f18/theme/buttons/saving.png" width="120" height="30" title="Guardar las calificaciones..." onclick="javascript:form_busqueda.submit();" onmouseover="style.cursor=cursor"/> </div> </form> <?php if (isset($_REQUEST["acc"])) { //donde se llevan los datos a la BD $ciclolectivo = $_REQUEST["Aciclo"]; $curso = $_REQUEST["Acurso"]; //se usa SOLO para preguntar de que curso es la nota para no promediar algunas $codmateria = $_REQUEST["Acodmat"]; $codinstancia = $_REQUEST["cboinstancia"]; //es la primera vez que se carga una nota para este alumno en este año y en esta materia $sel_resultado = "SELECT * FROM calificaciones_trimestres WHERE anio='$ciclolectivo' AND codmat='$codmateria' AND idcurso='$curso' AND borrado=0"; $res_resultado=mysql_query($sel_resultado); if (mysql_num_rows($res_resultado)>0) //ya se ha cargado alguna nota para este alumno, materia y ciclo lectivo, por lo tanto solo actualizo el registro { $configura="SELECT A.nroleg,C.nrolegajo FROM alumnos A INNER JOIN curso_alumnos C ON A.nroleg=C.nrolegajo WHERE C.idcurso='$curso' AND C.ciclo_lectivo='$ciclolectivo' AND C.borrado=0 ORDER BY A.sexo DESC,A.apellido ASC"; $consulta=mysql_query($configura) or die ("Fallo en Obtener los alumnos del curso solicitado desde la base de datos!!!"); while($fila = mysql_fetch_array($consulta, MYSQL_ASSOC)) { $nroleg = $fila['nroleg']; $nota = $_REQUEST[nota.$nroleg]; switch($codinstancia) { case 1: //la nota se carga al 1º trimestre { $query2 = "UPDATE calificaciones_trimestres SET trimestre1='$nota' WHERE nroleg='$nroleg' AND anio='$ciclolectivo' AND codmat='$codmateria' AND idcurso='$curso' AND borrado=0"; $rs_query2 = mysql_query($query2, $con); } break; $libro = $_REQUEST[libro.$nroleg]; $folio = $_REQUEST[folio.$nroleg]; case 5: //la nota se carga a diciembre { if ($nota >= 6) { $query2 = "UPDATE calificaciones_trimestres SET diciembre='$nota',dic_lib='$libro',dic_fol='$folio',calif_def='$nota' WHERE nroleg='$nroleg' AND anio='$ciclolectivo' AND codmat='$codmateria' AND idcurso='$curso' AND borrado=0"; else //la nota es menor a 6 { $query2 = "UPDATE calificaciones_trimestres SET diciembre='$nota',dic_lib='$libro',dic_fol='$folio' WHERE nroleg='$nroleg' AND anio='$ciclolectivo' AND codmat='$codmateria' AND idcurso='$curso' AND borrado=0"; $rs_query2 = mysql_query($query2, $con); } } break;