Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/03/2012, 12:39
chubse
 
Fecha de Ingreso: marzo-2012
Mensajes: 84
Antigüedad: 12 años, 1 mes
Puntos: 3
Exclamación Insertar registros array a una base de MySQL

Que tal amigos, un cordial saludo para todos ustedes agradeciendo anticipadamente su ayuda. Estoy creando un sistema de asistencia bastante sencillo, donde tomo la lista de estudiantes de una base de datos de en MySQL. En este momento con php hice que en un formulario me aparezcan en textbox todos los alumnos (según vayan ingresando más alumnos se actualice el formulario) y la asistencia con la fecha con textbox vacíos respectivamente para que con un submit me envíe la información a la base de datos de todos los alumnos.

¿Cómo puedo hacer para insertar los datos a una base de MySQL, en diferentes filas?

De antemano gracias por su tiempo y ayuda

Código donde pinto el formulario
Código PHP:
 <?php
   
   $usu_alum
=mysql_query("SELECT ID_ALUMNO FROM ml_dat_ALUMNO WHERE ID_GRUPO = '$nombre_gpo'");
                           
   
   
   echo 
"<table width='765' border='2' align='left'>";
   
   echo 
'<form action="CONEXION_ASISTENCIA.php" id="asist" method="POST">';

echo 
"<tr>";

echo 
"<td width='236' bgcolor='#C4CDFD' align='center'><font size='-1'><font face='Arial'><b>Alumno</b></td>";

echo 
"<td width='236' bgcolor='#C4CDFD' align='center'><font size='-1'><font face='Arial'><b>Asistencia</b></td>";

echo 
"<td width='236' bgcolor='#C4CDFD' align='center'><font size='-1'><font face='Arial'><b>Fecha de asistencia</b></td>";

echo 
"</tr>";

while (
$row_asist mysql_fetch_row($usu_alum)){

echo 
"<tr> \n";

echo 
"<input type='hidden' name='ID_GRUP' id='ID_GRUP' value='$nombre_gpo' />";

echo 
"<td width='236' bgcolor='#C4CDFD' align='center'><input type='text' name='ALUMNOS' size='20' maxlength='20' value='$row_asist[0]'><font size='-1'><font face='Arial'></td></input> \n";

echo 
"<td width='236' bgcolor='#C4CDFD' align='center'><input type='text' name='ASIST' size='20' maxlength='20' value=''><font size='-1'><font face='Arial'></td></input> \n";

echo 
"<td width='236' bgcolor='#C4CDFD' align='center'><input type='text' name='FECHA_ASISTENCIA' size='20' maxlength='20' value=''><font size='-1'><font face='Arial'></td></input> \n";

echo 
"</tr> \n";

}

echo 
"<td width='236' bgcolor='#C4CDFD' align='center'><input type='submit' name='ENVIAR' id='ENVIAR' value='Guardar'><input type='reset' name='RESTABLECER' id='RESTABLECER' value='Borrar datos'><font size='-1'><font face='Arial'></td> \n";

echo 
"</font>";

echo 
"</table> \n";
 
echo 
'</form>';
 
 
?>

Código de la consulta
Código PHP:
<?php
$conexion
=mysql_connect("localhost","-----------","-----------");
if (!
$conexion) {
die(
"Fallo la conexión a la Base de Datos: " mysql_error());
}
$db=mysql_select_db("--------------",$conexion);
if (!
$db) {
die(
"Fallo la selección de la Base de Datos: " mysql_error());
}

$GRUPO=$_POST['ID_GRUP'];
$ALUMNO=$_POST['ALUMNOS'];
$ASISTENCIA=$_POST['ASIST'];
$FECHA_ASISTENCIA=$_POST['FECHA_ASISTENCIA'];

$insertar=mysql_query("INSERT INTO ml_dat_ASISTENCIA(ID_GRUPO,ID_ALUMNO,ASISTENCIA,FECHA_ASIST) VALUES('$GRUPO','$ALUMNO','$ASISTENCIA','$FECHA_ASISTENCIA')",$conexion);    
if (!
$insertar) {
die(
"Fallo en la insercion de registro en la Base de Datos: " mysql_error());
}
mysql_close($conexion);

echo 
'<script>alert("Los datos han sido almacenados en la base de datos");</script>';
        echo 
'<SCRIPT LANGUAGE="javascript">
        location.href="MILISTA_BD_ASIST.php";
        </SCRIPT>'
;

?>

EJEMPLO:
No se tiene un número exacto de alumnos, así que pinto en el formulario una tabla con los alumnos que se obtienen de una base de datos de MySQL, sin embargo en la consulta establezco que se envíen los registros de los textbox 'ALUMNO', 'ASISTENCIA' y 'FECHA_ASISTENCIA', por lógica los 23 alumnos se encuentran en el textbox con el mismo nombre y quisiera ingresar los datos de todos ellos, ya que sólo envía el último.

Última edición por chubse; 28/03/2012 a las 14:14