InicioInfoCalendario con sistema de paginacion PHP

Calendario con sistema de paginacion PHP

Info•6/8/2014
Calendario con paginacion de mes

Calendario con sistema de paginacion PHP

Este es un calendario que pagina el mes y su año es infinito, encontrar el codigo de un calendario paginado funcional es siempre dificil pues aqui les entrego uno correcto, cuando miren el codigo para quienes no conocian el operador ternario , busquen sobre el operador ternario que hace parte del codigo del calenadario, es similar o igual al condicional if despues de que lo comprendan veran mas facil la comprencion del calendario.
Otra cosa tan importante que deben aprender es sobre el paso de variables por url es fundamental y la mayoria de portales dinamicos usan esa tecnica, escuchen consejos.
Compartire el codigo de agregar amigos al estilo facebook que se trata de jugar con los id de los usuarios, busquen en mis post de taringa, es un milagro tener ese codigo asi que usenlo estudienlo ya uno practicando llegara lejos aprendera mas rapido despegara en PHP por eso es vital compartir la info.


Es un buen ejercicio que junto con el codigo de agregar amigos lo ponen a uno a volar con PHP y MSYQL.

Ya saben para los primiparos en desarrollo web siempre se usa o xampp o wampserver yo uso wampserver para probar mis proyectos web.


<?php
$ano = isset($_GET['ano']) ? $_GET['ano'] : date("Y",time());//recibe parametros de ao
$mes = isset($_GET['mes']) ? $_GET['mes'] : date("n",time());//recibe parametros de mes
$meses = array(//define nombres de los meses
1=>"Enero",
2=>"Febrero",
3=>"Marzo",
4=>"Abril",
5=>"Mayo",
6=>"Junio",
7=>"Julio",
8=>"Agosto",
9=>"Septiembre",
10=>"Octubre",
11=>"Noviembre",
12=>"Diciembre"
);
$dias = array(//define las iniciales de los dias
"D",
"L",
"M",
"M",
"J",
"V",
"S"
);
$dias_x_mes = cal_days_in_month(CAL_GREGORIAN, $mes, $ano);//obtener el numero de dias del mes
$inicio_mes_dia = jddayofweek (cal_to_jd(CAL_GREGORIAN, $mes, 1, $ano));//obtener el dia que inicia el mes
//se definen los parametros para navegar en los meses anterior y siguiente
$ant['mes'] = ($mes == 1) ? 12 : ($mes-1);
$ant['ano'] = ($mes == 1) ? ($ano-1) : $ano;
$sig['mes'] = ($mes == 12) ? 1 : ($mes+1);
$sig['ano'] = ($mes == 12) ? ($ano+1) : $ano;
?>
<html>
<head>
<title>Calendario</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
body{
font-family:Helvetica, Arial, Verdana, Sans-serif;
font-size:12px;
}
.titulocal{
width:210px;
text-align:center;
colorimGray;
padding:5px 0px 5px 0px;
}
.titulocal a{
text-decoration:none;
color: DimGray;
}
.tablacal{
width:210px;
padding:0;
border-collapse: collapse;
border:1px solid LightGrey;
font-size:12px;
}
.tablacal th{
width:30px;
background-color:LightGrey;
border-collapse: collapse;
}
.tablacal td{
color:Black;
text-align:center;
}
</style>
</head>
<body>
<div class='titulocal'><!--navegacion anterior y siguiente -->
<a href='<?php echo $_SERVER['PHP_SELF'] ?>?ano=<?php echo $ant['ano'] ?>&mes=<?php echo $ant['mes'] ?>' id='anterior'><</a>
 <?php echo $meses[$mes]." ".$ano?> 
<a href='<?php echo $_SERVER['PHP_SELF'] ?>?ano=<?php echo $sig['ano'] ?>&mes=<?php echo $sig['mes'] ?>' id='siguiente'>></a>
</div>
<table class='tablacal'><!--inicio de la tabla del calendario-->
<tr>
<?php
for ($dias_semana=0; $dias_semana<count($dias); $dias_semana++){//encabezados con los nombres de los dias

echo "<th class='nombredias'>". $dias[$dias_semana]."</th> ";

}
?>
<tr>
<?php
for($dia_mes=1; $dia_mes<=$dias_x_mes; $dia_mes++){
if(jddayofweek (cal_to_jd(CAL_GREGORIAN, $mes, $dia_mes, $ano)) == 0 || $dia_mes == 1){
?>
<tr>
<?php
}
if($dia_mes == 1){
for($dias_antes=0; $dias_antes<$inicio_mes_dia; $dias_antes++){//espacios en blanco que son los dias finales del mes anterior
?>
<td class='dia'> </td>
<?php
}
}
$dia = ($dia_mes<10) ? "0".$dia_mes : $dia_mes;
$mesactual = ($mes<10) ? "0".$mes : $mes;
//se muestran cada uno de los dias
?>
<td class='dia'><?php echo $dia_mes ?></td>
<?php
if($dia_mes == $dias_x_mes){
$dias_fin = 6 - jddayofweek (cal_to_jd(CAL_GREGORIAN, $mes, $dias_x_mes, $ano));
for($dias_despues=0; $dias_despues<$dias_fin; $dias_despues++){//espacios en blanco que son los primeros dias del mes siguiente
?>
<td class='dia'> </td>
<?php
}
}
if(jddayofweek (cal_to_jd(CAL_GREGORIAN, $mes, $dia_mes, $ano)) == 6 || $dia_mes==$dias_x_mes){//fin del renglon al final de la semana o del mes
?>
</tr>
<?php
}
}
?>
</table><!--fin de la tabla del calendario-->
<body>
</html>
Datos archivados del Taringa! original
0puntos
0visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
6visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

n
nicolait🇦🇷
Usuario
Puntos0
Posts33
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.