Ver Mensaje Individual
  #5 (permalink)  
Antiguo 15/06/2009, 11:40
Lion619
 
Fecha de Ingreso: junio-2009
Mensajes: 26
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Ayuda con actualizar datos multiples

Bueno, digamos que ya solucione el problema de las cajas de texto, aunque tengo el presentimiento que esta mal... aqui les dejo el codigo

Código PHP:
<?php
 $carrera 
$_POST["carrera"];
 
$ciclo $_POST["ciclo"];
 
$materia $_POST["materia"];
 
 
 
// Conectar con el servidor de base de datos
      
$conexion mysql_connect ("localhost","root","")
         or die (
"No se puede conectar con el servidor");

   
// Seleccionar base de datos
      
mysql_select_db ("registroacademico")
         or die (
"No se puede seleccionar la base de datos");

   
// Enviar consulta
      
$instruccion "SELECT  alumnos.*,alumnos.codalumno, materias.nombre_materia, materias.ciclo, notas.*
FROM    alumnos
    INNER JOIN carreras ON alumnos.codcarrera=carreras.codcarrera
    INNER JOIN materias ON carreras.codcarrera=materias.codcarrera
    INNER JOIN notas ON materias.codmateria=notas.codmateria
where carreras.nombre_carrera like '$carrera'
  and materias.ciclo like '$ciclo' and materias.nombre_materia like '$materia'"
;
  
  
      
$consulta mysql_query ($instruccion$conexion)
         or die (
"Fallo en la consulta");
         
          
// Mostrar resultados de la consulta
      
$nfilas mysql_num_rows ($consulta);
   echo 
"<form name='updatenotas' method='POST' action='updatenotas.php'>";
      
      if (
$nfilas 0)
      {
        
         print (
"<TABLE border = '1'>\n");
         print (
"<TR>\n");
         print (
"<TH>Codigo</TH>\n");
         print (
"<TH>Nombre</TH>\n");
         print (
"<TH>Apellido</TH>\n"); 
         print (
"<TH>Lab1</TH>\n"); 
         print (
"<TH>Act1</TH>\n"); 
         print (
"<TH>Par1</TH>\n");
         print (
"<TH>Promedio 1</TH>\n"); 
         print (
"<TH>Lab2</TH>\n"); 
         print (
"<TH>Act2</TH>\n"); 
         print (
"<TH>Par2</TH>\n");
         print (
"<TH>Promedio 2</TH>\n"); 
         print (
"<TH>Lab3</TH>\n"); 
         print (
"<TH>Act3</TH>\n"); 
         print (
"<TH>Par3</TH>\n");
         print (
"<TH>Promedio 3</TH>\n"); 
         print (
"<TH>Promedio Final</TH>\n");
         
         
         
          
         print (
"</TR>\n");
            
$z=0;
         for (
$i=0$i<$nfilas$i++)
         {
            
$resultado mysql_fetch_array ($consulta);
            print (
"<TR>\n"); 
            print (
"<TD>" "<input type='text' name='codalumno[$z]' size='10' value='$resultado[0]'readonly />" "</TD>\n");  
            print (
"<TD>" $resultado['nombre'] . "</TD>\n");
            print (
"<TD>" $resultado['apellido'] . "</TD>\n");
            print (
"<TD>" "<input type='text' name='lab1[$z]' size='3' value='$resultado[13]'>" "</TD>\n");
            print (
"<TD>" "<input type='text' name='act1[$z]' size='3' value='$resultado[14]'>" "</TD>\n");
            print (
"<TD>" "<input type='text' name='par1[$z]' size='3' value='$resultado[15]'>" "</TD>\n");
            print (
"<TD>" "<input type='text' name='prom1[$z]' size='3' value='$resultado[16]'>" "</TD>\n");
            print (
"<TD>" "<input type='text' name='lab2[$z]' size='3' value='$resultado[17]'>" "</TD>\n");
            print (
"<TD>" "<input type='text' name='act2[$z]' size='3' value='$resultado[18]'>" "</TD>\n");
            print (
"<TD>" "<input type='text' name='par2[$z]' size='3' value='$resultado[19]'>" "</TD>\n");
            print (
"<TD>" "<input type='text' name='prom2[$z]' size='3' value='$resultado[20]'>" "</TD>\n");
            print (
"<TD>" "<input type='text' name='lab3[$z]' size='3' value='$resultado[21]'>" "</TD>\n");
            print (
"<TD>" "<input type='text' name='act3[$z]' size='3' value='$resultado[22]'>" "</TD>\n");
            print (
"<TD>" "<input type='text' name='par3[$z]' size='3' value='$resultado[23]'>" "</TD>\n");
            print (
"<TD>" "<input type='text' name='prom3[$z]' size='3' value='$resultado[24]'>" "</TD>\n");
            print (
"<TD>" "<input type='text' name='promfinal[$z]' size='3' value='$resultado[25]'>" "</TD>\n");
        
               
$z++;
            print (
"</TR>\n");
         }

         print (
"</TABLE>\n");
         echo 
"<input type='submit' value='Actualizar Notas' name='ok'><br>";
        echo 
"</form>";
      }
      else
      
         print (
"No hay registros");

// Cerrar conexión
   
mysql_close ($conexion);
?>
lo que hice fue: agregar una varieble llama $z, que se vaya incrementando, ese incremento, se le agrega al nombre de las cajas de texto, ahora bien intenté hacer lo mismo con el resultado, osea las intrucciones que hacen que se guarden los registros ingresados en la base de datos

Código PHP:
<label id="Label" style="position: absolute; left: 500px; top: 173px;"><Font size="5">Datos 
Actualizados Satisfactoriamente</font></h3></label>

<?php

$link 
mysql_connect("localhost","root","");
mysql_select_db("registroacademico"$link);
 
 

 
// Enviar consulta
      
$instruccion "SELECT  alumnos.*,alumnos.codalumno, materias.nombre_materia, materias.ciclo, notas.*
FROM    alumnos
    INNER JOIN carreras ON alumnos.codcarrera=carreras.codcarrera
    INNER JOIN materias ON carreras.codcarrera=materias.codcarrera
    INNER JOIN notas ON materias.codmateria=notas.codmateria
where carreras.nombre_carrera like '$carrera'
  and materias.ciclo like '$ciclo' and materias.nombre_materia like '$materia'"
;
  
  
      
$consulta mysql_query ($instruccion$link)
         or die (
"Fallo en la consulta");
         
          
// Mostrar resultados de la consulta
      
$nfilas mysql_num_rows ($consulta);
   echo 
"<form name='updatenotas' method='POST' action='updatenotas.php'>";
      
      if (
$nfilas 0)
      {
        
      
         echo 
"generando las tablas";
            
$z=0;
         for (
$i=0$i<$nfilas$i++)
         {
          
$codalumno[$z] = $_POST["codalumno[$z]"];
          
$lab1[$z] = $_POST["act1[$z]"];
          
$act1[$z] = $_POST["act1[$z]"];
          
$par1[$z] = $_POST["par1[$z]"];
          
$prom1[$z] = $_POST["prom1[$z]"];
          
$lab2[$z] = $_POST["act2[$z]"];
          
$act2[$z] = $_POST["act2[$z]"];
          
$par2[$z] = $_POST["par2[$z]"];
          
$prom2[$z] = $_POST["prom2[$z]"];
          
$lab3[$z] = $_POST["act3[$z]"];
          
$act3[$z] = $_POST["act3[$z]"];
          
$par3[$z] = $_POST["par3[$z]"];
          
$prom3[$z] = $_POST["prom3[$z]"];
         
         
mysql_query("UPDATE notas SET lab1='$lab1[$z]', act1='$act1[$z]', par1='$par1[$z]', prom1='$prom1[$z]' where codalumno like '$codalumno[$z]'"$link);
         
mysql_query("UPDATE notas SET lab2='$lab2[$z]', act2='$act2[$z]', par2='$par3[$z]', prom2='$prom2[$z]' where codalumno like '$codalumno[$z]'"$link);
         
mysql_query("UPDATE notas SET lab3='$lab3[$z]', act3='$act3[$z]', par3='$par3[$z]', prom3='$prom3[$z]' where codalumno like '$codalumno[$z]'"$link);
                
               
$z++;
            print (
"</TR>\n");
         }
           
                              
               
      }
      else
      echo
"</form>";
         print (
"No hay registros");
 
                               
?>
no me los guarda!, sinceramente, no sé que es lo que tengo mal

Gracias!

ah y perdon por el doble post