Mira volvi a checar mi consulta la ejecute desde phpmyadmid
SELECT r.NOMBRE, r.ID_MATERIA, m.NOMBRE, m.ID_MATERIA
FROM materia m
LEFT JOIN materia r ON m.REQUISITO = r.ID_MATERIA
WHERE m.ID_MATERIA
IN (
'abc', 'dfe'
)
AND (
r.ID_MATERIA IS NOT NULL
AND r.ID_MATERIA NOT
IN (
'abc', 'dfe'
)
)
y ya obtengo el resultado
NOMBRE ID_MATERIA NOMBRE ID_MATERIA
Matematicas abc Cálculo Integral dfe
Osea me muestra bien los resultados... pero en mi form... muestra dos veces
Calculo integral.... osea no muestra matematicas...
dejo mi código
Código PHP:
foreach($clases as $clase)
$q_clase = quoted($clase);
$listaMaterias="('".implode("','", $clases)."')";
echo $listaMaterias;{
$consulta = "SELECT r.nombre,r.id_materia,m.nombre,m.id_materia FROM materia m LEFT JOIN materia 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)";
$resultado = @mysql_query($consulta, $conexion) or die(mysql_error());
}/*fin foreach*/
$query_clase = "SELECT r.NOMBRE,r.ID_MATERIA,m.NOMBRE,m.ID_MATERIA FROM materia m LEFT JOIN materia r ON m.REQUISITO=r.ID_MATERIA WHERE m.ID_MATERIA IN ('abc', 'dfe') AND (r.ID_MATERIA IS NOT NULL AND r.ID_MATERIA NOT IN ('abc', 'dfe'))";
$result_clase = @mysql_query($query_clase, $conexion) or die(mysql_error());
$filas = mysql_num_rows($result_clase);
if($filas != 0){#Algo va realmente mal si las filas son 0
$clase = mysql_fetch_array($result_clase);
echo "<tr>
<td>".$clase['CLAVE']."</td>
<td>".$clase['NOMBRE']."<br>".$clase['NOMBRE']."</td>
</tr>";
}else{
echo "<tr><td colspan=6>No seleccionó materias</td></td></tr>";
}
echo "";
#Fin de tabla
echo "</table>";
piePagina();
?>