Cita:
Iniciado por carlosbarbiero gracias por esta enorme ayuda lo que pasa es que mi consulta es general en si no especifico ningun curso... osea que aparescan todos los cursos con sus participantes
Es muy simple, aquí tienes el código al completo:
Código PHP:
//Contamos los cursos que hay y cogemos información sobre todos ellos.
$GetAllCouses=mysql_query("SELECT Nombre_Curso FROM cursos")or die(mysql_error());
$NUMERO_CURSOS=mysql_num_rows($GetAllCouses);
if($NUMERO_CURSOS==0){
echo'No hay ningún curso';
} else {
for($i=0;$i<$NUMERO_CURSOS;$i++)
{
$Course=mysql_fetch_array($getCourse, MYSQL_BOTH);
//Ya tenemos el nombre del curso. Vamos a ver cuantos alumnos hay inscrutos:
$getNumberStudents=mysql_query("SELECT count(id) AS total FROM alumnos WHERE Alumno_Grupo='".$Course['Nombre_Curso']."'") or die(mysql_error());
$NumberStudents=mysql_fetch_array($getNumberStudents);
//Ya tenemos los alumnos totales: $NumberStudents['total']
//Ahora a mirar cuantos grupos hay y cuales son:
$getGroups = mysql_query("SELECT Grupo,Grupo_Curso FROM grupos WHERE Grupo_Curso='".$Course['Nombre_Curso']."' ORDER BY id ASC"); //ASC o DESC...
$NumberGroups=mysql_num_rows($getGroups);
for($i=1;$i<=$NumberGroups;$i++)
{
$Group=mysql_fetch_array($getGroups, MYSQL_BOTH);
$GroupsNames.=$Group['Grupo']; //Empezar con un .= producirá un warning sin importancia. Si quieres evitarlo simplemente utiliza un IF's.
if($NumberGroups!=$i && $i!=$NumberGroups-1) //Si no es el último ni el penúltimo:
{
$GroupsNames.=', ';
} else if($i==$NumberGroups-1) //Si es el penúltimo:
{
$GroupsNames.='y ';
}else if($i==$NumberGroups) //Si es el último:
$GroupsNames.='.';
}
echo'En el curso de '.Course['Nombre_Curso'].' hay '.$NumberStudents['total'].' alumnos y este se divide en '.$NumberGroups.' grupo(s): '.$GroupsNames."<br />";
}
}
No sé si tendrá algún error.