Ver Mensaje Individual
  #2 (permalink)  
Antiguo 11/09/2012, 02:09
portela85
 
Fecha de Ingreso: abril-2011
Mensajes: 103
Antigüedad: 13 años, 1 mes
Puntos: 3
Respuesta: Problemas foreach

¿Nadie más inspirado que yo?

public function ConsultoresNoReportados($mes, $ano){

Código:
$user = new usuario();

$cons= $user->ObtenerConsultores();

    foreach($cons as $consultores) {
	
$consultor_no_report = $consultores['Ident_consultor'];

	$query="Select calendario_dias.dia AS dia from calendario_dias WHERE calendario_dias.mes = '$mes' AND dia NOT IN (SELECT DISTINCT trabajos.dia FROM trabajos INNER JOIN consultores ON trabajos.consultores_Ident_consultor = consultores.Ident_consultor WHERE mes = '$mes' AND ano = '$ano' AND consultores.Ident_consultor = '$consultor_no_report');";
	echo $query;
	$consulta = new Consulta($query2);
	
	while($fila = $consulta->obtener_fila()) {
		$consultores_no_report[] = array(
				'consultor'	=> 	$fila['consultor'],               		 
				'dia' 			=>	$fila['dia']);
	}
	
    }
    
    return $consultores_no_report;
    
    if(!$consulta) 
	    throw new Exception("Al parecer han reportado todos.");

    }
Hay otra cosa que no he llegado a entender muy bien. Si pongo
$consultor_no_report = $consultores['Ident_consultor'][$i]; //$i=0 y con un $i++
Me hace la consulta nuevamente una sóla vez, pero sin embargo me saca el valor de Ident_consultor = 5, que ni si quiera existe en la base de datos.

Por otro lado, la función ObtenerConsultores me devueve un array ¿estoy en lo cierto? No entiendo entonces por qué el foreach se me ejecuta una sola vez...!!!!

gracias por anticipado!