Calendario em php, marca dia atual e definir por mes em mes.

Enviada por Jefferson Androcles 
Jefferson Androcles
Calendario em php, marca dia atual e definir por mes em mes.
04 de September de 2015 às 10:37AM
Galera é minha primeira vez nesse em um fórum, estou aqui pois eu to dois dias batendo cabeça com isso, antes muito obrigado. vamos lá: eu tenho um codigo php que me reproduz calendários de varios anos so que ele me retorna todos os mês de todos os anos em uma so pagina, estou tentando por esse meses em uma div que role para o próximo mês e que quando eu abra a pagina que venha com o mês atual o código é esse:



<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Documento sem título</title>
<style type="text/css">
.mes {
border: 1px solid #CCCCCC;
float: left;
display: block;
margin-right: 20px;
margin-bottom: 20px;
}

.mes td, .mes th {
font-size: 12px;
color: #000000;
font-family: Arial;
width: 25px;
text-align: center;
}

.dom {
background-color: #CCCCCC;
}

.sab {
background-color: #EFEFEF;
}
.diacerto{
background-color:#000000;
}
a{

}
</style>
</head>

<body>
<?php
date_default_timezone_set('America/Sao_Paulo');

// nomes dos meses
$meses = explode(',', 'janeiro,fevereiro,marco,abril,maio,junho,julho,agosto,setembro,outubro,novembro,dezembro');
// nomes dos dias da semana
$diasSemana = explode(',', 'dom,seg,ter,qua,qui,conteudo inapropriado,sab');
// ano desejado
$ano = 2015;
// mes inicial do ano
$inicial = 01;
// quantidade de meses a ser exibido
$qtd = 50;

// para a quantidade de meses desejados
for($i=0; $i<$qtd; $i++){
// numero de dias do mes
$maxDias = date('d', mktime(0,0,0,$inicial+$i+1, 0, $ano));
// dia da semana inicial
$diaSemana = date('w', mktime(0,0,0,$inicial+$i, 1, $ano));
// numero do mes
$mes = date('m', mktime(0,0,0,$inicial+$i, 1, $ano));
// ano atual conforme calculo
$anoAtual = date('Y', mktime(0,0,0,$inicial+$i, 1, $ano));
// nome do mes atual
$nome = $meses[$mes-1];

// inicia a tabela com o nome do mes
echo '<table class="mes">';
echo '<thead>';
echo '<tr><th colspan="7">',$nome,' ', $anoAtual, '</th></tr>';

// cabecalho com os nomes dos dias da semana

echo '<tr>';
for($j=0; $j<7; $j++){
echo '<th bgcolor="#fff">', $diasSemana[$j],'</th>';
}
echo '</tr>';
echo '</thead>';


// se o dia da semana for maior que domingo
// criamos as celulas iniciais para poder iniciar no dia correto
if($diaSemana > 0){
echo '<tr>';
for($j=0; $j<$diaSemana; $j++){
echo '<td>&nbsp;</td>';
}
}

// para cada dia encontrado no mes
for($j=1; $j<=$maxDias; $j++){
// pega o dia semana
$diaSemana = date('w', mktime(0,0,0,$inicial+$i, $j, $ano));

// classe CSS conforme o dia da semana
switch($diaSemana){
case 0:
$class = 'dom';
break;
case 6:
$class = 'sab';
break;


default:
$class = 'normal';
break;
}

// se for domingo, abre uma nova linha
if($diaSemana == 0){
echo '<tr>';
}

// escreve a celula do dia
echo '<td class="',$class,'"><a href="teste4.php?dia='.$j.'&mes='.$mes.'">', $j, '</a></td>';
// se for sabado, fecha a linha
if($diaSemana == 6){
echo '</tr>';
}
}

// se sobraram dias para fechar a linha
if($diaSemana < 6){
for($j=$diaSemana; $j<6; $j++){
echo '<td>&nbsp;</td>';
}
echo '</tr>';
}

// fecha a tabela
echo '</table>';
}


?>
</body>
</html>
Você precisa estar logado no PHPBrasil.com para poder enviar mensagens para os nossos fóruns.

Faça o login aqui.