Tengo este codigo y arroja esto
Estas son las materias requisito encontradas en su selección:
Taller de lectura II (resultado query uno)
Resultados query2
Nombre
Matematicas
Nombre
Calculo
Nombre
Taller de lectura II
ACA INTENTO que no salga taller II ya que ya salio en la primera query... por no tener seleccionado su requisito osea Taller I...... alguna idea GRACIAS NUEVAMENTE
[PHP]
Código PHP:
$materias_elegidas = $_POST["clases"];
echo $materias_elegidas;
$listaMaterias = "('" . implode("','", $materias_elegidas) . "')";
echo $listaMaterias;
$query="SELECT
r.NOMBRE, r.ID_MATERIA, m.NOMBRE, m.ID_MATERIA
FROM
materia2 m LEFT JOIN materia2 r
ON
m.REQUISITO = r.ID_MATERIA
WHERE
m.ID_MATERIA IN $listaMaterias
AND
(r.ID_MATERIA IS NOT NULL AND r.ID_MATERIA NOT IN $listaMaterias)";
$consulta = @mysql_query($query, $conexion) or die(mysql_error());
if (mysql_num_rows($consulta)){
echo "Estas son las materias requisito encontradas en su selección: <br />";
while ($row = mysql_fetch_array($consulta))
echo $row["NOMBRE"] . "<br />";
}
/* DOS aca muestro las seleccionadas pero necesito que no muestre la que mostro con la primera query--- osea la q no cumplio el requisito (que no fue seleccionado.*/
foreach($clases as $clase){
$q_clase = quoted($clase);
$query2="SELECT m.NOMBRE, m.ID_MATERIA
FROM
materia2 m
WHERE
m.ID_MATERIA=$q_clase;
";
$consulta2 = @mysql_query($query2, $conexion) or die(mysql_error());
$filas = mysql_num_rows($consulta2);
if($filas != 0){#Algo va realmente mal si las filas son 0
$clase = mysql_fetch_array($consulta2);
echo "<table>
<tr>
<td>Nombre</td>
</tr>";
echo "<tr>
<td>".$clase['CLAVE']."</td>
<td>".$clase['NOMBRE']."</td>
</tr>";
}else{
echo "<tr><td colspan=6>No seleccionó materias</td></td></tr>";
}
}
echo "";