ayuda a completar este codigo

Iniciado por chury666, 13 Febrero 2013, 08:43 AM

0 Miembros y 1 Visitante están viendo este tema.

chury666

tengo un problema con un código como lo estoy formulando me guarda la calificación de los alumnos del ultimo registro que introduzco quiero que cada alumno tenga su propias calificaciones alguien sabe como corregirlo?
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<link href="asistencia.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="Freebooter-Script-fontfacekit/stylesheet.css" />
<title>listado</title>
</head>
<?php
   include("conectar.php");
   $resultados = mysql_query("SELECT id_alumno, nombre FROM alumno where grupo='1-A' ORDER BY nombre");
?>
<body bgcolor="#070646">
<h1>Escuela Juan Escutia</h1>
<form method="post" action="procesarcla1.php">
<table border="2" bgcolor="#98D8F4">
   <tr>
       <th>N.</th>       
        <th>Alumno</th>
        <th>Español</th>
        <th>Matematicas</th>
        <th>Exploracion de la naturaleza y sociedad</th>
        <th>Formacion civica y etica</th>
        <th>Educacion Fisica</th>
        <th>Educ. Artistica</th>
       
       
       
    </tr>
   
     <?php
       while($row = mysql_fetch_array($resultados)){
    ?>
      <form method="post" action="procesarcla1.php">
   <tr>
       <td><?php echo $row[0]?> </td>       
       <td><?php echo $row[1]?> </td>
        <td><input type="number" size="10" maxlength="10" name="espanol"></td>
        <td><input type="number" size="10" maxlength="10" name="matematicas"></td>
        <td><input type="number" size="10" maxlength="10" name="ens"></td>
        <td><input type="number" size="10" maxlength="10" name="fce"></td>
        <td><input type="number" size="10" maxlength="10" name="ef"></td>
        <td><input type="number" size="10" maxlength="10" name="ea"></td>       
    </tr>
    <?php
      }
   ?>
   
</table>
<input type="submit" value="Guardar">
</form>

<a href="mostrarcali.php" style="color:#FFF">Mostrar calificaciones</a>
</body>
</html>


________________________________________________________________
aqui esta a la pagina que manda el form que es el procesarcla1.php
<?php
   include("conectar.php");
   
         
         
       
        $espanol = $_POST["espanol"];
      $matematicas = $_POST["matematicas"];
      $ens = $_POST["ens"];
      $fce = $_POST["fce"];
      $ef = $_POST["ef"];
      $ea = $_POST["ea"];

        $resultados = mysql_query("SELECT id_alumno FROM alumno where grupo='1-A' ORDER BY nombre");
      while($row = mysql_fetch_array($resultados)){

   


   if (mysql_query("INSERT INTO `escuela`.`primero` (`id_alumno`,`espanol`, `matematicas`, `ens`, `fce`, `ef`, `ea`) VALUES
    (".$row[0].", ".$espanol.", ".$matematicas.", ".$ens.", ".$fce.", ".$ef.", ".$ea.")")){
   header("location:mostrarcali.php");
    }else{
      header("location:listadocal.php");
   
   
      }
      
      
      }

      
?>


it3r

envia los inputs como arrays así:

<input type="number" size="10" maxlength="10" name="espanol[<?PHP echo $row['id_alumno']; ?>]">



eso hara que se envie como espanol[2], donde 2 es el id del alumno, luego en mostrarcali.php recorres los alumnos y obtienes sus notas con $_POST['espanol'][$id_alumno];

Si solo necesitas las notas del mes actual deberias cambiar el INSERT por UPDATE, ya que cada vez que ingresas notas ingresas un nuevo registro en vez de actualizarlo, ahora si quieres tener un historial de notas, deberias ponerle aunque sea una fecha para luego poder tener un historial de notas.

Saludos.

chury666

muchas gracias it3r me sirvió de mucho tu respuesta ya solucione el problema (Y)