Ver Mensaje Individual
  #50 (permalink)  
Antiguo 14/01/2014, 14:19
Avatar de Alexis88
Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: Ajustar codigo

Ya no es necesario utilizar el constructor foreach porque con el implode, transformas el array en una cadena y como le insertas comas y comillas simples, queda lista para ser insertada en la consulta. No hagas esto: echo $materias_elegidas, así no se imprimen los valores de un array y no es necesario hacerlo en este caso.

Si quisieras verificar que alguno de los cursos tiene un requisito en la lista de cursos seleccionados, por ejemplo:

Cursos seleccionados:
- Mat3 (Requisito: Mat2) [Suponiendo que NO se aprobó Mat2]
- Len5 (Requisito: Len4) [Suponiendo que se aprobó Len4]
- Fis2 (Requisito: Fis1) [Suponiendo que se aprobó Fis1]
- Mat2 (Requisito: Mat1) [Suponiendo que se aprobó Mat1]

Código PHP:
Ver original
  1. $cursosSeleccionados = array(
  2.                                 array("Cur" => "Mat3", "Req" => "Mat2"),
  3.                                 array("Cur" => "Len5", "Req" => "Len4"),
  4.                                 array("Cur" => "Fis2", "Req" => "Fis1"),
  5.                                 array("Cur" => "Mat2", "Req" => "Mat1"),
  6.                             );
  7.                            
  8. foreach ($cursosSeleccionados as $curso){
  9.     $req = $curso["Cur"];
  10.     foreach ($cursosSeleccionados as $c){
  11.         if ($c["Req"] == $req){
  12.             echo $req . " es requisito de " . $c["Cur"];
  13.             break;
  14.         }
  15.     }
  16. }

Esto imprimiría lo siguiente:

Código HTML:
Ver original
  1. Mat2 es requisito de Mat3

De este modo, verificas curso por curso si alguno de ellos es requisito de otro que esté en lista. Ten en cuenta que también tendrás que verificar que se haya aprobado el curso requisito de uno que esté en lista y cuyo requisito no se encuentre en lista, por ejemplo, que se haya aprobado Len4 para poder llevar Len5, a pesar de que Len4 no está en lista.

Y antes de que me lo preguntes, los requisitos de los cursos los obtienes con la query que te dio dashtrash.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand