Hola a todos!!

Tengo un problemilla que es el siguiente.Tengo dos tablas una llamada realiza y otra componen.
La primera tiene los siguientes campos (idAlumno,idCurso,IdModulo,Nota)
La segunda tablas los siguientes campos (idCuso,IdModulo,numero).NOTA: Un curso se compone da varios modulos.

Pues bien yo quiero hacer que segun un idCurso y un idAlumno, se introduzcan en la tabla primera tantos campos como IdModulos tenga el curso.Por ejemplo:

Tengo en la segunda tabla metido idCurso 1 1 1
idModulo 1 2 3
numero 1 2 3
Pues bien para el alumno pepito(idAlumno), curso 1 (idcurso) quisiera meter tantos campos como modulos tiene mi curso en este caso son 3.Quedando de la siguiente forma.

idAlumno pepito pepito pepito
idcurso 1 1 1
idModulo 1 2 3
nota 0 0 0

Pues bien yo lo he intetado de la siguiente forma:

Código :

function insertarenrealiza($alumno,$curso){
                  $curso = utf8_encode($curso); //<-- utf8_encode para que php entienda el escape() de flash 
               $alumno = utf8_encode($alumno);//<-- igual
               $op=0;//variable para veces realizado
               $op2=0.0;//variable double para la nota
               //creamos la cadena de nuestra sentencia(query) SQL
               $sql="SELECT idModulo FROM componen WHERE idCurso='".$curso."'"; 
               $res=query($sql,0);
               if (mysql_num_rows($res)>0){
                     while ($fila=mysql_fetch_row($res)){
                        $sql= "INSERT INTO realiza (idAlumno,idCurso,idModulo,vecesrealizado,nota) 
                      vALUES ('".$alumno."','".$curso."','".$fila->idModulo."','".$op2."')";
                     query($sql,1);
                     }
               }
               return 1;//retornamos el id de nuestro registro insertado
         }
function query ($sql, $accion){
            $conex=mysql_connect(HOSTNAME,USERNAME,PASSWORD) or die("no se puede conectar con la base de datos");
              mysql_select_db(DATABASE,$conex);
               $result= mysql_query($sql,$conex);
            if ($accion && result){ //Excepcion del INSERT, comparamos result por si la inserción fue correcta :P
               $result= mysql_insert_id();
            }
            mysql_close($conex);               
               return $result; //Consultar retonara un recordSet
                            //Modificar y Eliminar 1 si fue correcto o 0 en caso contrario
                        //Insertar retornara el id recien creado 
         }




Pues no me funciona.Espero haber me explicado.

Si alguien sabe como se hace o tiene alguna idea le estaria agradecido.

Muchas gracias

Un saludo