Buenas colegas del foro, les paso mi inconveniente a ver si me pueden ayudar...
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;