Ir para conteúdo
Fórum Script Brasil
  • 0

Cakendário


rafapregai

Pergunta

Olá, estou com um calenário em php/mysql. Só que o calendário mostra no o mês atual. Consegui fazer o calendário passar o mês,observem o nome TESTE no scripr abaixo, porém em dezembro ele volta pro mês que estamos. Alguém poderia me dar uma ideia de colocar pra começar o próximo ano ?

<?php
     $atual  = "style=color:orange;";
     $domingo  = "style=color:#C30;";
     @$hoje     = "<a href=rafael.php?id=$mes";

     $mes  = date("m");
     $dia  = date("d");
     $ano  = date("Y");
     $ano_ = substr($ano,-2);

     // Testes
     
     if (@$_GET['mes']==""){
     $mes = $mes;
     }
     else if (@$_GET['mes']<13){
     @$novo=$_GET['mes'];
     $mes=$novo+1;


     }
      echo "<a href=?mes=$mes&ano=$ano>próximo</a>";

     //fim dos Tetes

     function meses($a)  {
              switch($a) {
                     case 1:  $mes = "janeiro";   break;
                     case 2:  $mes = "fevereiro"; break;
                     case 3:  $mes = "março";     break;
                     case 4:  $mes = "abril";     break;
                     case 5:  $mes = "maio";      break;
                     case 6:  $mes = "junho";     break;
                     case 7:  $mes = "julho";     break;
                     case 8:  $mes = "agosto";    break;
                     case 9:  $mes = "setembro";  break;
                     case 10: $mes = "outubro";   break;
                     case 11: $mes = "novembro";  break;
                     case 12: $mes = "dezembro";  break;
              }
              return $mes;


     }
?>
<table border="0" summary="Calendário" class="calendario">
     <caption><?php echo "".meses($mes)." ".$ano.""; ?></caption>
     <thead>
     <tr>
         <th abbr="Domingo" title="Domingo"><b <?php echo("$domingo");?>>D</b></th>
         <th abbr="Segunda" title="Segunda"><b>S</b></th>
         <th abbr="Terça"   title="Terça"><b>T</b></th>
         <th abbr="Quarta"  title="Quarta"><b>Q</b></th>
         <th abbr="Quinta"  title="Quinta"><b>Q</b></th>
         <th abbr="Sexta"   title="Sexta"><b>S</b></th>
         <th abbr="Sábado"  title="Sábado"><b>S</b></th>
     </tr>
     </thead>
     <tbody>


     <?php

          $Data = strtotime($mes."/".$dia."/".$ano_);
          $Dia  = date('w',strtotime(date('n/\1\/Y',$Data)));
          $Dias = date('t',$Data);

          for ($i=1,$d=1;$d<=$Dias;) {
               echo("<tr>");
               for ($x=1;$x<=7 && $d <= $Dias;$x++,$i++) {
                    if ($i > $Dia) {
            $destaque = '';
                        if ($x == 1)    { $destaque = $domingo; }
                        if ($d == $dia) { $destaque = $atual; }

       include ("conexao.php");
       $sql="SELECT * FROM agenda";
       $pesquisa=mysql_query($sql);
       while ($mostrar=mysql_fetch_array($pesquisa)){
              $dia_link=$mostrar['dia'];
              $mes_link=$mostrar['mes'];
              $id_agenda=$mostrar['id_agenda'];
                        if (($d == $dia_link) && ($mes == $mes_link)) { $destaque = $hoje."$id_agenda"; }
            }
                        echo("<td ".$destaque.">".$d++."</td>");

                    }
                    else { echo("<td> </td>"); }
               }
               for (;$x<=7;$x++) { echo("<td> </td>"); }
               echo("</tr>");
           }
     ?>

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Salve,

Acho que o php já faz isso automaticamente para você, veja o código abaixo:

<?php
$dia = '01';        //Dia primeiro
$mes = 12;          //Dezembro
$ano = date("Y");   //2010
//Agora vamos adicionar, 40 dias (10/01/2011)
echo date("d/m/Y", mktime(0, 0, 0, $mes, ($dia + 40), $ano ));

Abraços

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...