Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/03/2010, 17:35
Ofesad
 
Fecha de Ingreso: julio-2009
Ubicación: Córdoba capital
Mensajes: 8
Antigüedad: 15 años, 4 meses
Puntos: 0
Problema con Switch e If

Compañeros/as:

Paso a comentarles de un inconveniente que estoy teniendo con un sistema que estoy desarrollando para el ministerio de educación de mi provincia.

En si, es un 90% funcional ya, estoy en fases finales; pero me he encontrado con un inconveniente grave.

Lo que ocurre es que, como verán en el codigo, tengo una serie de variables y propiedades que evaluo para obtener el nombre de la tabla donde se almacenarán los datos.

tipo_carga = string que solo recibe los datos "I" ó "T" (Inicial ó Trayectoria)
anio_actual = NO es el año de fecha, es el año de educación (1er año, 2do etc), recibe enteros (del 1 al 6) y por defecto está en 0. Este cambia a string 'total' cuando se almacena la fila de totales unicamente.


Codigo problematico:
Código PHP:
$tabla "rmatri_ini10.";
        
        
        switch(
$this->tipo_carga)
            {
                case 
'I': if($this->anio_actual == 'total') { $tabla .= "t_inicial_totales"; } else { $tabla .= "t_inicial"; } break;
                case 
'T': if($this->anio_actual == 'total') { $tabla .= "t_trayectoria_totales"; } else { $tabla .= "t_trayectoria"; } break;
            } 
El inconveniente se presenta en Trayectoria; como verán las condiciones son exactamente iguales y opera perfectamente para cualquier caso.

Solo al cargar las escuelas que dan clases de Artistica (no tienen años, solo niveles), ocurre el inconveniente; lo cual hace que el bucle que recorre el array de niveles, guarde unicamente la fila totales n cantidad de veces.
Es decir, solo guarda la fila de totales y no las otras.

Para que esto ocurra, la UNICA y si, repito, la unica, posibilidad es que el valor de la propiedad anio_actual esté entrando como 'total'; pero al depurar, veo que está en 0. Por ende, php/apache interpreta que 0 es igual a total, cuando no deberia.

Como dije, para cualquier otro caso, distintos tipos de carga y tipos de educación, etc etc etc, funciona perfectamente.


Quisiera que me tiren alternativas para poder ver de solucionar el inconveniente ya que tengo que presentarlo a la brevedad.

Desde ya, muchisimas gracias.


Saludos desde Córdoba.

Ofesad


Ps: Si algo no está muy claro, puedo ampliarlo. Pregunten con confianza.