Ver Mensaje Individual
  #3 (permalink)  
Antiguo 07/07/2013, 04:59
noruas
 
Fecha de Ingreso: junio-2012
Mensajes: 80
Antigüedad: 11 años, 11 meses
Puntos: 11
Respuesta: Alternar valor de una variable de clase en una tabla

Lo que se genera es algo como esto:



Con un vistazo ves si hay una reserva o no, pero si coincide que hay dos o mas reservas de forma consecutiva, no puedes saber de forma rápida (si si pinchas encima y tal, pero eso ya es otro tema a parte que no incumbe aquí :P) cuando empieza una y cuando termina otra.

Quiero que de forma sencilla, es decir, visual, sepa cuando empieza una y cuando termina otra, por medio del uso de dos colores, rojo y azul por ejemplo (clase A y clase B).

Así que, cuando digo que se alternen, como ya dije en el primer post, la 1º reserva tendrá clase A, la segunda clase B, la tercera clase A otra vez...

En el caso de la 4º reserva "solitaria" que vemos al final, he puesto "B o A ?" por que no se si se pude de forma sencilla que solo se alternen las clases a si son contiguas y que no lo hagan si están separadas unas de otras, aunque eso ahora mismo es lo que menos me importa, como que se alternen unas a otras me conformo.

A ver si alguien me dice como hacerlo o me da alguna pista que pueda seguir para encaminarme hacia la solución.





EDITO:

Bueno me dieron ideas en otro foro, al final he resuelto parte del problema así:

Código PHP:
Ver original
  1. while($dia_actual <= $ultimo_dia){
  2.     $reserva = check_reservado($mes,$ano,$dia_actual);
  3.     $id_actual = id_reserva($mes,$ano,$dia_actual);
  4.  
  5.     if($reserva){
  6.         if($id_actual != $id_old){
  7.             if($check){
  8.                 $check = FALSE;
  9.             }else{
  10.                 $check = TRUE;
  11.             }
  12.         }
  13.         if(!$check){
  14.             $class = 'reservadoA';
  15.         }else{
  16.             $class = 'reservadoB';
  17.         }
  18.         $id_old = $id_actual;
  19.     }else{
  20.         $class = '';
  21.         $check = FALSE;
  22.     }
  23.     echo '
  24.                <td class="'.$class.'">'.$dia_actual.'</td>
  25.    ';
  26.     $dia_actual++;
  27. }

Última edición por noruas; 07/07/2013 a las 13:17