Calendário precisando mudar o mês
Prezados Amigos eu tenho o código abaixo e
Com este código eu consegui gerar o calendário de um mês
Porém eu preciso conseguir mudar o mês e escolher as datas (necessito os dias sejam links)
<?php
date_default_timezone_set('America/Sao_Paulo');
$date =time();
$hoje = date('j');
$day = date ('d',$date);
$month = date ('m', $date);
$year = date ('Y', $date);
$first_day = mktime(0,0,0, $month,1, $year);
$title = date('F', $first_day);
$day_of_week = date('D', $first_day);
switch($day_of_week){
case "Sun": $blank = 0; break;
case "Mon": $blank = 1; break;
case "Tue": $blank = 2; break;
case "Wed": $blank = 3; break;
case "Thu": $blank = 4; break;
case "Fri": $blank = 5; break;
case "Sat": $blank = 6; break;
}
$days_in_month = cal_days_in_month(0, $month, $year);
echo "<table border=6 width=394>";
echo "<tr><th colspan=60> $title $year</th></tr>";
echo "<tr><td width=62>S</td><td width=62>M</td><td width=62>T</td><td width=62>W</td><td width=62>Th</td><td width=62>Fri</td><td width=62>Sat</td></tr>";
$day_count = 1;
echo "<tr>";
while ($blank > 0){
echo "<td></td>";
$blank = $blank-1;
$day_count++;
}
$day_num = 1;
while ($day_num <= $days_in_month){
echo "<td> $day_num </td>";
$day_num++;
$day_count++;
if ($day_count > 7){
echo "<tr></tr>";
$day_count = 1;
}
}
while ($day_count > 1 && $day_count <=7){
echo "<td> </td>";
$day_count++;
}
echo "</tr></table>";
?>
Eu dei uma olhada neste código
if(empty($_GET['data'])){//navegaçao entre os meses
$dia = date('d');
$month =ltrim(date('m'),"0");
$ano = date('Y');
}else{
$data = explode('/',$_GET['data']);//nova data
$dia = $data[0];
$month = $data[1];
$ano = $data[2];
}
if($month==1){//mês anterior se janeiro mudar valor
$mes_ant = 12;
$ano_ant = $ano - 1;
}else{
$mes_ant = $month - 1;
$ano_ant = $ano;
}
if($month==12){//proximo mês se dezembro tem que mudar
$mes_prox = 1;
$ano_prox = $ano + 1;
}else{
$mes_prox = $month + 1;
$ano_prox = $ano;
}
$hoje = date('j');//função importante pego o dia corrente
switch($month.$n){/notem duas variaveis para o switch para identificar dia e limitar numero de dias/
case 1: $mes = "JANEIRO";
$n = 31;
break;
case 2: $mes = "FEVEREIRO";// todo ano bixesto fev tem 29 dias
$bi = $ano % 4;//anos multiplos de 4 são bixestos
if($bi == 0){
$n = 29;
}else{
$n = 28;
}
break;
case 3: $mes = "MARÇO";
$n = 31;
break;
case 4: $mes = "ABRIL";
$n = 30;
break;
case 5: $mes = "MAIO";
$n = 31;
break;
case 6: $mes = "JUNHO";
$n = 30;
break;
case 7: $mes = "JULHO";
$n = 31;
break;
case 8: $mes = "AGOSTO";
$n = 31;
break;
case 9: $mes = "SETEMBRO";
$n = 30;
break;
case 10: $mes = "OUTUBRO";
$n = 31;
break;
case 11: $mes = "NOVEMBRO";
$n = 30;
break;
case 12: $mes = "DEZEMBRO";
$n = 31;
break;
Mas não estou conseguindo unir os dois
Por favor quem puder ajudar, pode ser ate com sugestões diferentes do que eu postei encima
Grato desde já
Discussão (7)
Carregando comentários...