He construido una función que resuelve la aprobación de materias correlativas en mi sistema de gestión académica. Lo hice con un switch y en cada 'case' agrego una sentencia 'return' para que me devuelva al script un 0 o un 1 dependiendo si puede o no el supuesto alumno inscribirse a esa materia.
La pregunta puntual es: ¿Como hago para capturar el valor devuelto por la función porque no se como tomarlo? Obviamente la funcion no me funciona...

Aca va parte de la funcion porque no me entra:
Código PHP:
<? //FUNCION PARA VERIFICAR LA APROBACIÓN DE MATERIAS CORRELATIVAS
//**************************************************************
//ANALISTA EN COMPUTACIÓN ADMINISTRATIVA
Function correl_analista($materia, $cod_alumno)
include("conexiones.php");
switch ($materia) //todos los case estan ordenados por año segun planilla de correlatividades (Anexo 1)
{
case "A01":
return 1;
break;
case "A27":
return 1;
break;
case "A02":
$query="SELECT reg_alumno_mesa.cod_alumno , reg_alumno_mesa.nota , reg_mesa.cod_mat ,
reg_alumno_mesa.cod_mesa
FROM reg_alumno_mesa INNER JOIN reg_mesa
ON reg_alumno_mesa.cod_mesa = reg_mesa.cod_mesa
WHERE reg_mesa.cod_mat = 'A01' AND reg_alumno_mesa.cod_alumno = '$cod_alumno'
ORDER BY reg_alumno_mesa.cod_mesa DESC LIMIT 1";
conectar_admin('sga');
$k=mysql_query($query);
$data=mysql_fetch_array($k);
if($data[nota] >=6)
{
return 1;
break;
}else{
return 0;
break;
}
case "A03":
$query="SELECT reg_alumno_mesa.cod_alumno , reg_alumno_mesa.nota , reg_mesa.cod_mat ,
reg_alumno_mesa.cod_mesa
FROM reg_alumno_mesa INNER JOIN reg_mesa
ON reg_alumno_mesa.cod_mesa = reg_mesa.cod_mesa
WHERE reg_mesa.cod_mat = 'A01' AND reg_alumno_mesa.cod_alumno = '$cod_alumno'
ORDER BY reg_alumno_mesa.cod_mesa DESC LIMIT 1";
conectar_admin('sga');
$k=mysql_query($query);
$data=mysql_fetch_array($k);
if($data[nota] >=6)
{
return 1;
break;
}else{
return 0;
break;
}
case "A04":
$query="SELECT reg_alumno_mesa.cod_alumno , reg_alumno_mesa.nota , reg_mesa.cod_mat ,
reg_alumno_mesa.cod_mesa
FROM reg_alumno_mesa INNER JOIN reg_mesa
ON reg_alumno_mesa.cod_mesa = reg_mesa.cod_mesa
WHERE reg_mesa.cod_mat = 'A27' AND reg_alumno_mesa.cod_alumno = '$cod_alumno'
ORDER BY reg_alumno_mesa.cod_mesa DESC LIMIT 1";
conectar_admin('sga');
$k=mysql_query($query);
$data=mysql_fetch_array($k);
if($data[nota] >=6)
{
return 1
break;
}else{
return 0;
break;
}
case "A07":
$query="SELECT reg_alumno_mesa.cod_alumno , reg_alumno_mesa.nota , reg_mesa.cod_mat ,
reg_alumno_mesa.cod_mesa
FROM reg_alumno_mesa INNER JOIN reg_mesa
ON reg_alumno_mesa.cod_mesa = reg_mesa.cod_mesa
WHERE reg_mesa.cod_mat = 'A01' AND reg_alumno_mesa.cod_alumno = '$cod_alumno'
ORDER BY reg_alumno_mesa.cod_mesa DESC LIMIT 1";
conectar_admin('sga');
$k=mysql_query($query);
$data=mysql_fetch_array($k);
if($data[nota] >=6)
{
return 1;
break;
}else{
return 0;
break;
}
case "A08":
$querya="SELECT reg_alumno_mesa.cod_alumno , reg_alumno_mesa.nota , reg_mesa.cod_mat ,
reg_alumno_mesa.cod_mesa
FROM reg_alumno_mesa INNER JOIN reg_mesa
ON reg_alumno_mesa.cod_mesa = reg_mesa.cod_mesa
WHERE reg_mesa.cod_mat = 'A02' AND reg_alumno_mesa.cod_alumno = '$cod_alumno'
ORDER BY reg_alumno_mesa.cod_mesa DESC LIMIT 1";
$queryb="SELECT reg_alumno_mesa.cod_alumno , reg_alumno_mesa.nota , reg_mesa.cod_mat ,
reg_alumno_mesa.cod_mesa
FROM reg_alumno_mesa INNER JOIN reg_mesa
ON reg_alumno_mesa.cod_mesa = reg_mesa.cod_mesa
WHERE reg_mesa.cod_mat = 'A03' AND reg_alumno_mesa.cod_alumno = '$cod_alumno'
ORDER BY reg_alumno_mesa.cod_mesa DESC LIMIT 1";
conectar_admin('sga');
$a=mysql_query($querya);
$dataa=mysql_fetch_array($a);
$b=mysql_query($queryb);
$datab=mysql_fetch_array($b);
if($dataa[nota] >=6 and $datab[nota] >=6)
{
return 1;
break;
}else{
return 0;
break;
}
case "A10":
return 1;
break;
case "A05":
return 1;
break;
case "A06":
return 1;
break;
//FIN MATERIAS PRIMER AÑO
case "A11":
$query="SELECT reg_alumno_mesa.cod_alumno , reg_alumno_mesa.nota , reg_mesa.cod_mat ,
reg_alumno_mesa.cod_mesa
FROM reg_alumno_mesa INNER JOIN reg_mesa
ON reg_alumno_mesa.cod_mesa = reg_mesa.cod_mesa
WHERE reg_mesa.cod_mat = 'A02' AND reg_alumno_mesa.cod_alumno = '$cod_alumno'
ORDER BY reg_alumno_mesa.cod_mesa DESC LIMIT 1";
conectar_admin('sga');
$k=mysql_query($query);
$data=mysql_fetch_array($k);
if($data[nota] >=6)
{
return 1;
break;
}else{
return 0;
break;
}
case "A12":
$query="SELECT reg_alumno_mesa.cod_alumno , reg_alumno_mesa.nota , reg_mesa.cod_mat ,
reg_alumno_mesa.cod_mesa
FROM reg_alumno_mesa INNER JOIN reg_mesa
ON reg_alumno_mesa.cod_mesa = reg_mesa.cod_mesa
WHERE reg_mesa.cod_mat = 'A08' AND reg_alumno_mesa.cod_alumno = '$cod_alumno'
ORDER BY reg_alumno_mesa.cod_mesa DESC LIMIT 1";
conectar_admin('sga');
$k=mysql_query($query);
$data=mysql_fetch_array($k);
if($data[nota] >=6)
{
return 1;
break;
}else{
return 0;
break;
}
case "A14":
$query="SELECT reg_alumno_mesa.cod_alumno , reg_alumno_mesa.nota , reg_mesa.cod_mat ,
reg_alumno_mesa.cod_mesa
FROM reg_alumno_mesa INNER JOIN reg_mesa
ON reg_alumno_mesa.cod_mesa = reg_mesa.cod_mesa
WHERE reg_mesa.cod_mat = 'A10' AND reg_alumno_mesa.cod_alumno = '$cod_alumno'
ORDER BY reg_alumno_mesa.cod_mesa DESC LIMIT 1";
conectar_admin('sga');
$k=mysql_query($query);
$data=mysql_fetch_array($k);
if($data[nota] >=6)
{
return 1;
break;
}else{
return 0;
break;
}
case "A13":
$query="SELECT reg_alumno_mesa.cod_alumno , reg_alumno_mesa.nota , reg_mesa.cod_mat ,
reg_alumno_mesa.cod_mesa
FROM reg_alumno_mesa INNER JOIN reg_mesa
ON reg_alumno_mesa.cod_mesa = reg_mesa.cod_mesa
WHERE reg_mesa.cod_mat = 'A05' AND reg_alumno_mesa.cod_alumno = '$cod_alumno'
ORDER BY reg_alumno_mesa.cod_mesa DESC LIMIT 1";
conectar_admin('sga');
$k=mysql_query($query);
$data=mysql_fetch_array($k);
if($data[nota] >=6)
{
return 1;
break;
}else{
return 0;
break;
}
case "A09":
$query="SELECT reg_alumno_mesa.cod_alumno , reg_alumno_mesa.nota , reg_mesa.cod_mat ,
reg_alumno_mesa.cod_mesa
FROM reg_alumno_mesa INNER JOIN reg_mesa
ON reg_alumno_mesa.cod_mesa = reg_mesa.cod_mesa
WHERE reg_mesa.cod_mat = 'A04' AND reg_alumno_mesa.cod_alumno = '$cod_alumno'
ORDER BY reg_alumno_mesa.cod_mesa DESC LIMIT 1";
conectar_admin('sga');
$k=mysql_query($query);
$data=mysql_fetch_array($k);
if($data[nota] >=6)
{
return 1;
break;
}else{
return 0;
break;
}
case "A15":
$querya="SELECT reg_alumno_mesa.cod_alumno , reg_alumno_mesa.nota , reg_mesa.cod_mat ,
reg_alumno_mesa.cod_mesa
FROM reg_alumno_mesa INNER JOIN reg_mesa
ON reg_alumno_mesa.cod_mesa = reg_mesa.cod_mesa
WHERE reg_mesa.cod_mat = 'A13' AND reg_alumno_mesa.cod_alumno = '$cod_alumno'
ORDER BY reg_alumno_mesa.cod_mesa DESC LIMIT 1";
$queryb="SELECT reg_alumno_mesa.cod_alumno , reg_alumno_mesa.nota , reg_mesa.cod_mat ,
reg_alumno_mesa.cod_mesa
FROM reg_alumno_mesa INNER JOIN reg_mesa
ON reg_alumno_mesa.cod_mesa = reg_mesa.cod_mesa
WHERE reg_mesa.cod_mat = 'A04' AND reg_alumno_mesa.cod_alumno = '$cod_alumno'
ORDER BY reg_alumno_mesa.cod_mesa DESC LIMIT 1";
conectar_admin('sga');
$a=mysql_query($querya);
$dataa=mysql_fetch_array($a);
$b=mysql_query($queryb);
$datab=mysql_fetch_array($b);
if($dataa[nota] >=6 and $datab[nota] >=6)
{
return 1;
break;
}else{
return 0;
break;
}
}
?>