Foros del Web » Programando para Internet » PHP »

Ayuda Calendario PHP

Estas en el tema de Ayuda Calendario PHP en el foro de PHP en Foros del Web. Bueno, necesito una pequeña ayuda, pero bastante grande a la vez :) Necesito que me ayudeis, con un problemilla, si me lo podeis hacerlo os ...
  #1 (permalink)  
Antiguo 14/01/2010, 05:37
 
Fecha de Ingreso: octubre-2009
Mensajes: 13
Antigüedad: 14 años, 6 meses
Puntos: 0
Ayuda Calendario PHP

Bueno, necesito una pequeña ayuda, pero bastante grande a la vez :)
Necesito que me ayudeis, con un problemilla, si me lo podeis hacerlo os agradeceria mucho vuestro esfuerzo ^^
Os dejo aquí los consejos a seguir para hacer el calendario PHP:

Crea en un archivo funcions.php, una función llamada calendario, que acepte tres parámetros (día, más y año), con estos datos debe construir una tabla con HTML donde si muestre el más actual, resaltado con un color el día pasado como parámetro y procurando que coincidan los días de la semana con el año indicado.
Una vez implementada la función calendario, cree otro archivo llamado principal.php, donde incluya el archivo funcions.php. Cree una página web en la que incorporaremos un calendario generado por parámetros, similar a la del ejemplo:
principal.php
<? php
$ salida = "<html> <body>";
$ salida .= calendario (22,3,2007);
$ salida .="</ body> </ html> ";
echo $ salida;
?>

funcions.php
<? php

function calendario ($ dia, $ mes, $ año)
(
/ / código a realizar como ejercicio
return $ calendarienhtml;
)
?>

Este calendario debe tener un aspecto similar al de la figura, hay que tener el siguiente comportamiento:

• En la parte superior hay que indicar el nombre del mes
• Marque en la segunda fila las celdas • las que indican el nombre del día de la semana (lunes, martes, ...)
• Es necesario que comience el primer día del mes indicado en el día de la semana que corresponda
• Pintad hasta el último día del mes seleccionado.
• Pintad el día indicado por el usuario en otro color.



Gracias de antemano, Saludos, Kid
  #2 (permalink)  
Antiguo 14/01/2010, 05:43
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 2 meses
Puntos: 29
Respuesta: Ayuda Calendario PHP

Pero tienes algún código de prueba o hay que hacerlo desde 0?
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #3 (permalink)  
Antiguo 14/01/2010, 05:47
 
Fecha de Ingreso: octubre-2009
Mensajes: 13
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Ayuda Calendario PHP

Cita:
Iniciado por CHuLoSoY Ver Mensaje
Pero tienes algún código de prueba o hay que hacerlo desde 0?
Hombre... pues sí
Me ayudaría mucho, sqe justo al empezarlo no me funciona y el xampp no me funciona muy bien tampoco, osea que si puede ser desde 0, mucho mejor.

Saludos, Kid
  #4 (permalink)  
Antiguo 14/01/2010, 05:52
Avatar de CapitanKidd  
Fecha de Ingreso: octubre-2009
Mensajes: 17
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Ayuda Calendario PHP

este post es intersante, yo buscava algo asi gracias cyberamigos =) a y gracias kid jejej

Última edición por CapitanKidd; 14/01/2010 a las 06:10
  #5 (permalink)  
Antiguo 14/01/2010, 05:54
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 2 meses
Puntos: 29
Respuesta: Ayuda Calendario PHP

Cita:
Iniciado por KidMastaKid Ver Mensaje
Hombre... pues sí
Me ayudaría mucho, sqe justo al empezarlo no me funciona y el xampp no me funciona muy bien tampoco, osea que si puede ser desde 0, mucho mejor.

Saludos, Kid
La verdad es que es una excusa muy mala
Justo al empezarlo con front page o qué? El xampp no funciona "muy bien" ? Eso qué es?
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #6 (permalink)  
Antiguo 14/01/2010, 05:58
 
Fecha de Ingreso: octubre-2009
Mensajes: 13
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Ayuda Calendario PHP

Cita:
Iniciado por CHuLoSoY Ver Mensaje
La verdad es que es una excusa muy mala
Justo al empezarlo con front page o qué? El xampp no funciona "muy bien" ? Eso qué es?
Bueno, te diré la verdad... no se hacerlo, nose ni empezarlo por así decirtelo, por eso necesito la ayuda..

Muchas gracias si me ayudas... sino pues gracias igualmente...
Solo tengo 12 anyitos, y mi padre que es informatico no tiene tiempo casi, por eso me gustaría aprenderlo por mi solo, ya que hago un curso online de informatica, me gustaría aprender :) Muchas gracias.
  #7 (permalink)  
Antiguo 14/01/2010, 06:05
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 2 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.
  #8 (permalink)  
Antiguo 15/01/2010, 04:06
 
Fecha de Ingreso: octubre-2009
Mensajes: 13
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Ayuda Calendario PHP

Gracias ChuloColega!

Etiquetas: calendario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 14:52.