Ver Mensaje Individual
  #7 (permalink)  
Antiguo 14/01/2010, 06:05
Avatar de CHuLoSoY
CHuLoSoY
 
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 3 meses
Puntos: 29
Respuesta: Ayuda Calendario PHP

Para aprender hay que estudiarse un manual y justo después ponerse a programar con el mismo manual delante.

Pero en fin. Si quieres aprender, vas a tener que exprimirte los sesos. TE dejo un código de un calendario que hice hace tiempo. Suprimo las cosas en javascript que no te hacen falta, porque el calendario hacía varias cosas según el día. Lo que sí tiene un problema, y es que los días de la semana aparecen un día después del que es, por ejemplo si hoy 14 de enero de 2010 cuadra en Jueves, en el calendario aparece viernes. Así que estudia el código y unos manuales y repáralo por ti mismo:

Código PHP:
Ver original
  1. <?php
  2.    
  3.     if(!$_GET['mes']){
  4.     $now = getdate(time());
  5.     $time = mktime(0,0,0, $now['mon'], 1, $now['year']);
  6.     $date = getdate($time);
  7.     $dayTotal = cal_days_in_month(0, $date['mon'], $date['year']);
  8.     $anyo=$now['year'];
  9.     } else {
  10.     $mesanterior=$_GET['mes'];
  11.     $anoanterior=$_GET['ano'];
  12.     $now = getdate(time());
  13.     $time = mktime(0,0,0, $mesanterior, 1, $anoanterior);
  14.     $date = getdate($time);
  15.     $dayTotal = cal_days_in_month(0, $mesanterior, $anoanterior);
  16.     $anyo=$anoanterior;
  17.     }
  18.  
  19.  
  20.     if ($date['month']=="January") { $mes="Enero"; $mesantes="Diciembre"; $mesdespues="Febrero";}
  21.     if ($date['month']=="February") { $mes="Febrero"; $mesantes="Enero"; $mesdespues="Marzo"; }
  22.     if ($date['month']=="March") { $mes="Marzo"; $mesantes="Febrero"; $mesdespues="Abril";  }
  23.     if ($date['month']=="April") { $mes="Abril"; $mesantes="Marzo"; $mesdespues="Mayo";  }
  24.     if ($date['month']=="May") { $mes="Mayo"; $mesantes="Abril"; $mesdespues="Junio";  }
  25.     if ($date['month']=="June") { $mes="Junio"; $mesantes="Mayo"; $mesdespues="Julio";  }
  26.     if ($date['month']=="July") { $mes="Julio"; $mesantes="Junio"; $mesdespues="Agosto";  }
  27.     if ($date['month']=="August") { $mes="Agosto"; $mesantes="Julio"; $mesdespues="Septiembre";  }
  28.     if ($date['month']=="September") { $mes="Septiembre"; $mesantes="Agosto"; $mesdespues="Octubre";  }
  29.     if ($date['month']=="October") { $mes="Octubre"; $mesantes="Septiembre"; $mesdespues="Noviembre"; }
  30.     if ($date['month']=="November") { $mes="Noviembre"; $mesantes="Octubre"; $mesdespues="Diciembre";  }
  31.     if ($date['month']=="December") { $mes="Diciembre"; $mesantes="Noviembre"; $mesdespues="Enero";  }
  32.  
  33.  
  34.     if ($mesantes=="Enero") { $mesantesnum="01"; }
  35.     if ($mesantes=="Febrero") { $mesantesnum="02"; }
  36.     if ($mesantes=="Marzo") { $mesantesnum="03"; }
  37.     if ($mesantes=="Abril") { $mesantesnum="04"; }
  38.     if ($mesantes=="Mayo") { $mesantesnum="05"; }
  39.     if ($mesantes=="Junio") { $mesantesnum="06"; }
  40.     if ($mesantes=="Julio") { $mesantesnum="07"; }
  41.     if ($mesantes=="Agosto") { $mesantesnum="08"; }
  42.     if ($mesantes=="Septiembre") { $mesantesnum="09"; }
  43.     if ($mesantes=="Octubre") { $mesantesnum="10"; }
  44.     if ($mesantes=="Noviembre") { $mesantesnum="11"; }
  45.     if ($mesantes=="Diciembre") { $mesantesnum="12"; }
  46.  
  47.  
  48.  
  49.     if ($mesdespues=="Enero") { $mesdespuesnum="01"; }
  50.     if ($mesdespues=="Febrero") { $mesdespuesnum="02"; }
  51.     if ($mesdespues=="Marzo") { $mesdespuesnum="03"; }
  52.     if ($mesdespues=="Abril") { $mesdespuesnum="04"; }
  53.     if ($mesdespues=="Mayo") { $mesdespuesnum="05"; }
  54.     if ($mesdespues=="Junio") { $mesdespuesnum="06"; }
  55.     if ($mesdespues=="Julio") { $mesdespuesnum="07"; }
  56.     if ($mesdespues=="Agosto") { $mesdespuesnum="08"; }
  57.     if ($mesdespues=="Septiembre") { $mesdespuesnum="09"; }
  58.     if ($mesdespues=="Octubre") { $mesdespuesnum="10"; }
  59.     if ($mesdespues=="Noviembre") { $mesdespuesnum="11"; }
  60.     if ($mesdespues=="Diciembre") { $mesdespuesnum="12"; }
  61.  
  62.  
  63.  
  64.     if ($mes=="Enero") { $mesNum="01"; }
  65.     if ($mes=="Febrero") { $mesNum="02"; }
  66.     if ($mes=="Marzo") { $mesNum="03"; }
  67.     if ($mes=="Abril") { $mesNum="04"; }
  68.     if ($mes=="Mayo") { $mesNum="05"; }
  69.     if ($mes=="Junio") { $mesNum="06"; }
  70.     if ($mes=="Julio") { $mesNum="07"; }
  71.     if ($mes=="Agosto") { $mesNum="08"; }
  72.     if ($mes=="Septiembre") { $mesNum="09"; }
  73.     if ($mes=="Octubre") { $mesNum="10"; }
  74.     if ($mes=="Noviembre") { $mesNum="11"; }
  75.     if ($mes=="Diciembre") { $mesNum="12"; }
  76.  
  77.  
  78.  
  79.  
  80.     if($mes=="Enero"){
  81.     $anoantes=($date['year'])-1;} else { $anoantes=$anyo; }
  82.     if($mes=="Diciembre") {
  83.     $anodespues=($date['year'])+1; } else { $anodespues=$anyo;; }
  84.  
  85.     print '<table width=100% style="border-width:1px;border-style:solid;border-color:black" cellpadding=3><tr><td colspan="7" style=font-size:8pt;><strong>' . $mes . '</strong> '.$anyo.'</td></tr><tr><td colspan=3><a href=calendario.php?fuente=peq&campo='.$campo.'&mes='.$mesantesnum.'&ano='.$anoantes.' style=font-size:8pt;>'.$mesantes.'</a></td><td colspan=4 align=right><a href=calendario.php?fuente=peq&campo='.$campo.'&mes='.$mesdespuesnum.'&ano='.$anodespues.' style=font-size:8pt;>'.$mesdespues.'</td></tr>';
  86.     for ($i = 0; $i < 6; $i++) {
  87.         print '<tr>';
  88.         for ($j = 1; $j <= 7; $j++) {
  89.             $dayNum = $j + $i*7 - $date['wday'];
  90.             print '<td width=14% ';
  91.             if ($dayNum > 0 && $dayNum <= $dayTotal) {
  92.                 print ($dayNum == $now['mday']) ? ' style="background: #BDBDBD;">' : '>';
  93.         if($dayNum<10){ $dayNum="0".$dayNum; } else { $dayNum=$dayNum; }
  94.                 print $dayNum; }
  95.             else {
  96.                 print '>';
  97.             }
  98.             print '</td>';
  99.         }
  100.         print '</tr>';
  101.         if ($dayNum >= $dayTotal && $i != 6)
  102.             break;
  103.     }
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.