
peguei um script de calendario por ai, alterei algumas coisas, mas estou com um problema, alias dois problemas:
- Eu queria que mostrasse, assim como mostra o dia de hoje, os dias que tem alguma coisa agendada no banco;
Já tentei de todas as formas, fazendo while (mysql_fetch_array), for mas nao consegui bons resultados. Segue o codigo abaixo.
calendario.php
<?php $ames = $_GET['mes']; $aano = $_GET['ano']; // Seta de mais mes $omes = $ames + 1; $nmes = mktime(0,0,0, $omes, 1, $aano); $pmes = strftime("%m", $nmes); if($pmes == 1): $oano = $aano+1; $nano = mktime(0,0,0, $ames, 1, $oano); $pano = strftime("%Y", $nano); else: $pano = $aano; endif; // Seta de menos mes $elmes = $ames - 1; $newmes = mktime(0,0,0, $elmes, 1, $aano); $mmes = strftime("%m", $newmes); if($mmes == 12): $elano = $aano - 1; $newano = mktime(0,0,0, $ames, 1, $elano); $mano = strftime("%Y", $newano); else: $mano = $aano; endif; $ano = $aano; //Pega o ano $cont = 0; $dia = date("d");//Pega o dia $dias = array();//Array que irá guardar os dias do mês $mes = $ames;//Pega o mês $totalDias = date("t", mktime(0, 0, 0, $ames, $adia, $aano));//Pega a qtd de dias do mês $primeiroDia = date("D", mktime(0, 0, 0, $ames, 1, $aano));//Vê em que dia da semana caiu o 1º dia do mês switch($ames): case 1: $ames2 = "janeiro"; break; case 2: $ames2 = "fevereiro"; break; case 3: $ames2 = "março"; break; case 4: $ames2 = "abril"; break; case 5: $ames2 = "maio"; break; case 6: $ames2 = "junho"; break; case 7: $ames2 = "julho"; break; case 8: $ames2 = "agosto"; break; case 9: $ames2 = "setembro"; break; case 10: $ames2 = "outubro"; break; case 11: $ames2 = "novembro"; break; case 12: $ames2 = "dezembro"; break; endswitch; switch($mes): case 1: $mes2 = "janeiro"; break; case 2: $mes2 = "fevereiro"; break; case 3: $mes2 = "março"; break; case 4: $mes2 = "abril"; break; case 5: $mes2 = "maio"; break; case 6: $mes2 = "junho"; break; case 7: $mes2 = "julho"; break; case 8: $mes2 = "agosto"; break; case 9: $mes2 = "setembro"; break; case 10: $mes2 = "outubro"; break; case 11: $mes2 = "novembro"; break; case 12: $mes2 = "dezembro"; break; endswitch; ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Account System - Calendario</title> <script type="text/javascript" src="js/javascript.js"></script> <link rel="stylesheet" type="text/css" href="css/calendario.css" media="screen"/> <link rel="icon" href="img/favicon.ico" type="image/x-icon"> </head> <body> <div id="seta"> <?php echo "<a href='calendario.php?mes=".$mmes."&ano=".$mano."'><img src='img/calsetesq.jpg' /></a>" ?> </div> <div id="seta" class="dir"> <?php echo "<a href='calendario.php?mes=".$pmes."&ano=".$pano."'><img src='img/calsetdir.jpg' /></a>" ?> </div> <table class="calendario" cellspacing="0"> <tr> <td colspan=7 class="topo"><?php echo $ames2." / ".$aano ?></td> </tr> <tr> <td class="dia" style="color: #FF0000;">D</td> <td class="dia">S</td> <td class="dia">T</td> <td class="dia">Q</td> <td class="dia">Q</td> <td class="dia">S</td> <td class="dia">S</td> </tr> <?php include ("session.php"); // Guarda os dados da sessao include ("../conexao.php"); // Faz a conexao com o banco $sql = "SELECT * FROM eventos WHERE usuario = '$login' ORDER BY dia AND mes AND ano" or die (mysql_error()); // Selecionando no banco $qr = mysql_query($sql) or die (mysql_error()); // Query $ames = $_GET['mes']; $aano = $_GET['ano']; $ano = $aano; //Pega o ano $anoatual = date("Y"); $cont = 0; $dia = date("d");//Pega o dia $dias = array();//Array que irá guardar os dias do mês $mes = $ames;//Pega o mês $mesatual = date("m"); //Pega o mês atual $totalDias = date("t", mktime(0, 0, 0, $ames, 1, $aano));//Pega a qtd de dias do mês $primeiroDia = date("D", mktime(0, 0, 0, $ames, 1, $aano));//Vê em que dia da semana caiu o 1º dia do mês //Aqui irá adicionar os dias do mês no array for($d = 0; $d < $totalDias; $d++)$dias[$d] = array_push($dias, $d+1); switch($primeiroDia): case 'Mon': $primeiroDia = "segunda-feira"; $pos = 1; break; case 'Tue': $primeiroDia = "terça-feira"; $pos = 2; break; case 'Wed': $primeiroDia = "quarta-feira"; $pos = 3; break; case 'Thu': $primeiroDia = "quinta-feira"; $pos = 4; break; case 'Fri': $primeiroDia = "sexta-feira"; $pos = 5; break; case 'Sat': $primeiroDia = "sábado"; $pos = 6; break; case 'Sun': $primeiroDia = "domingo"; $pos = 0; break; endswitch; for($linha = 0; $linha < 6; $linha++): echo "<tr>"; for($coluna = 0; $coluna < 7; $coluna++): $pos2 = $cont - $pos; // Parametro para o javascript:paginaCal(dia, mes, ano) $url = $dias[$pos2].",".$mes.",".$ano; if(empty($dias[$pos2])): echo "<td class='blank'> </td>"; else: if(($mes == $mesatual) && ($ano == $anoatual)): //Para ver se o mes e o ano da folhinha é o atual if($dias[$pos2] == $dia): echo "<td class='diahoje'><a href='javascript:paginaCal(".$url.");'>".$dias[$pos2]."</td></a>"; else: echo "<td class='normal'><a href='javascript:paginaCal(".$url.");'>".$dias[$pos2]."</td></a>"; endif; else: echo "<td class='normal'><a href='javascript:paginaCal(".$url.");'>".$dias[$pos2]."</td></a>"; endif; endif; $cont++; endfor; echo "</tr>"; endfor; ?> </table> </body> </html>
- A outra coisa, eu queria deixar os domingos em vermelho, nem é muito problema, é mais estetico mesmo.
Desculpe se o código estiver meio bagunçado, mas como disse sou iniciante!

Se alguém puder me dar uma luz eu agradeço!!
Obrigado!