Buenas... tengo una consulta SQL, pero necesito traducirla a factores de PHP como un array... es decir... tengo una SESSION creada de la cual pueden haber 1, 2, 3 y hasta 5 elementos -->
$_SESSION['materias'][] ... los valores de esta sesion necesito introducir dentro de una consulta MYSQL como:
En donde el <<WHERE (id_materia =
4 OR id_materia =
5 OR id_materia =
8) >> es donde deberían venir a parar los resultados del array de sesion...
Con un bucle FOR podría lograrlo, pero si se dan cuenta debo incluirle las condicionales OR si es que hay más de 1 resultado... y eso es lo que no estoy logrando resolver y necesito una mano...
Esta es una posibilidad que trate de realizar, pero no se como poner los OR... ya que, si la session solo trae 1 elemento, no hay problema, pero si trae 2 o más, ya necesito una condicional OR dentro del SQL.. en el ejemplo puse el OR dentro del bucle FOR, pero no funcionaría bien por lo siguiente:
Código PHP:
<?php
$sql = "SELECT id_material,material,
FROM plan_diario
WHERE (";
if(count($_SESSION['materias']) > 1){
for($i=0;$i<count($_SESSION['materias']);$i++){
//esta es la linea del problema al colocar el OR
$sql +="id_materia = ".$_SESSION['materias'][$i]." OR";
}
}else{
for($i=0;$i<count($_SESSION['materias']);$i++){
$sql +="id_materia = ".$_SESSION['materias'][$i];
}
}
$sql += ") AND curso =2 AND id_ciclo = 1";
?>
Si hay un solo resultado no tendría problemas.
Si hay más de un resultados tendría algo como
id_materia = 4 or id_materia = 6 or --> de nuevo el OR quedaría flotando..
y es eso lo que no puedo resolver