Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/04/2012, 12:01
GuillermoM
 
Fecha de Ingreso: abril-2011
Ubicación: España, Mdrid
Mensajes: 89
Antigüedad: 13 años
Puntos: 1
¿Qué falla en este script de fecha?

Hola a todos tengo este script:

Código PHP:
Ver original
  1. <?php
  2.     include ("inc/usarBD.php");
  3.     $consulta="SELECT * FROM citas WHERE usuario='".$_SESSION["nombre_usuario"]."';";
  4.     $hacerConsulta=mysql_query ($consulta,$conexion);
  5.     $now = getdate(time());
  6.     $time = mktime(0,0,0, $now['mon'], 1, $now['year']);
  7.     $date = getdate($time);
  8.     $dayTotal = cal_days_in_month(0, $mesActual, $annioActual);
  9.     print '<table style="margin-left: auto; margin-right: auto;font-size: 14px;"><tr><td colspan="7"><strong>' . $date['month'] . '</strong></td></tr>';
  10.     for ($i = -1; $i < 6; $i++) {
  11.         print '<tr>';
  12.         for ($j = 2; $j <= 8; $j++) {
  13.             $dayNum = $j + $i*7 - $date['wday'];
  14.             print '<td';
  15.             if ($dayNum > 0 && $dayNum <= $dayTotal) {
  16.                 while ($F = mysql_fetch_array($hacerConsulta, MYSQL_ASSOC)) {
  17.                 list($annio2, $mes2, $dia2) = explode("-", $F["diaCita"]);         
  18.                 print ($annio2 == $dayNum && $mes2 == $mesActual && $dia2 == $annioActual) ? ' style="background: blue;">' : '>';
  19.                 }
  20.                 print ($dayNum == $now['mday']) ? ' style="background: #ccc;">' : '>';
  21.                 print $dayNum;
  22.             }
  23.             else {
  24.            
  25.                 print '>';
  26.             }
  27.  
  28.             print '</td>';
  29.         }
  30.         print '</tr>';
  31.         if ($dayNum >= $dayTotal && $i != 6)
  32.             break;
  33.     }
  34.     print '</table>';
  35. ?>

Como véis es un script de calendario el cual recibe varios datos y mustra una cosa u otra en función de lo que reciba. Bueno pues tengo el siguiente problema:
Tiene dos colores: el gris que muestra el dia en el que estamos, y uno azul que muestra el día en el que se han encontrado eventos. Lo que ocurre es que mustra el día de hoy me lo muestra perfectamente pero el que procesa el dato de los eventos en el calendario no funciona.
He probado distintas combinaciones de este código pero nunca he llegado a conseguir que me marque todo los días con evento.
El fragmento en al que me refiero es este:

Código PHP:
Ver original
  1. if ($dayNum > 0 && $dayNum <= $dayTotal) {
  2.                 while ($F = mysql_fetch_array($hacerConsulta, MYSQL_ASSOC)) {
  3.                 list($annio2, $mes2, $dia2) = explode("-", $F["diaCita"]);         
  4.                 print ($annio2 == $dayNum && $mes2 == $mesActual && $dia2 == $annioActual) ? ' style="background: blue;">' : '>';
  5.                 }
  6.                 print ($dayNum == $now['mday']) ? ' style="background: #ccc;">' : '>';
  7.                 print $dayNum;
  8.             }
  9.             else {
  10.                 print '>';
  11.             }

Muchas gracias de antemano.