Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

gigabeat

Calendário com eventos

Recommended Posts

gigabeat

Boas pessoal :)

Alguém tem algum conhecimento sobre esta matéria ? Precisava de fazer um calendário que, clicando no dia, me permitisse adicionar um evento e guarda-lo numa base de dados... Depois de inserido o dia em questão este deveria de ficar de outra cor e quando se passasse o rato por cima aparecer uma breve descrição do mesmo...

Agradeço desde já a vossa atenção.

Share this post


Link to post
Share on other sites
Tuntankamon

Tens uma carrada de situações descritas, por isso convinha identificar claramente onde estás a ter problemas...

1º - Crias o calendário (ou arranjas já feito), e em todos os dias inseres links, link esse que refere a data

2º - Se tens o link no dia, ao clicares irás ser redireccionado para outra página, aí podes apresentar a listagem de actividades definidas para esse dia, bem como adicionares/removeres e alterares outras.

3º - Ao preencher o calendário, verificares se existem actividades na bd para o dia que estás a tratar (COUNT > 0), se sim alteras a côr da célula senão deixas estar

4º - Em relação ao MouseOver, existem vários modos de fazer isso, javascript, ajax...

Share this post


Link to post
Share on other sites
gigabeat

Tens uma carrada de situações descritas, por isso convinha identificar claramente onde estás a ter problemas...

1º - Crias o calendário (ou arranjas já feito), e em todos os dias inseres links, link esse que refere a data

2º - Se tens o link no dia, ao clicares irás ser redireccionado para outra página, aí podes apresentar a listagem de actividades definidas para esse dia, bem como adicionares/removeres e alterares outras.

3º - Ao preencher o calendário, verificares se existem actividades na bd para o dia que estás a tratar (COUNT > 0), se sim alteras a côr da célula senão deixas estar

4º - Em relação ao MouseOver, existem vários modos de fazer isso, javascript, ajax...

Depois de ver as tuas indicações comecei aqui a esgravulhar e já tenho um calendáriozeco feito...

Estou é com uma pequena dúvida, ou melhor, estou sem ideias ...

Tenho este codigo

<?php
    $today = getdate();
    if(isset($_GET['mon'])){
       if(isset($_GET['year'])){
          $start = mktime(0,0,0,$_GET['mon'],1,$_GET['year']);
       }
       else{
          $start = mktime(0,0,0,$_GET['mon'],1,$today['year']);
       }
    }
    else{
       $start = mktime(0,0,0,$today['mon'],1,$today['year']);
    }
        $first = getdate($start);
        $end = mktime(0,0,0,$first['mon']+1,0,$first['year']);
        $last = getdate($end);

        switch($first['month']){
            case "Jan": $first['month']="Janeiro"; break;
            case "Feb": $first['month']="Fevereiro"; break;
            case "Mar": $first['month']="Março";break;
            case "Apr": $first['month']="Abril";break;
            case "May": $first['month']="Maio"; break;
            case "Jun": $first['month']="Junho"; break;
            case "Jul": $first['month']="Julho"; break;
            case "Aug": $first['month']="Agosto";break;
            case "Sep": $first['month']="Setembro";break;
            case "Oct": $first['month']="Outubro";break;
            case "Nov": $first['month']="Novembro";break;
            case "Dec": $first['month']="Dezembro";break;
        }

        echo"
        <div class=calendar>
          <div class='monheader'> ".$first['month'] ." - ". $first['year']."</div>
          <div class='dayheader'>Dom</div>
          <div class='dayheader'>Seg</div>
          <div class='dayheader'>Ter</div>
          <div class='dayheader'>Qua</div>
          <div class='dayheader'>Qui</div>
          <div class='dayheader'>Sex</div>
          <div class='dayheader'>Sab</div>
        ";

    for($i = 0; $i < $first['wday']; $i++){
       echo '  <div class="inactive"></div>' . "\n";
    }
    for($i = 1; $i <= $last['mday']; $i++){
       if($i == $today['mday'] && $first['mon'] == $today['mon'] && $first['year'] == $today['year']){
          $style = 'today';
       }
       else{
          $style = 'day';
       }
       echo "<a href='eventos.php?dia=".$i."'><div class='". $style ."'>". $i ."</div></a>\n";
    }
    if($last['wday'] < 6){
       for($i = $last['wday']; $i < 6; $i++){
          echo '  <div class="inactive"></div>' . "\n";
       }
    }

        echo "</div>";
?>

como hei-de fazer para que o utilizador possa trocar o mês ou o ano ?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.